Java开发用到的工具类

Hutool

官网 http://hutool.cn/
API 参考 http://hutool.mydoc.io/?t=812
GitHub https://github.com/looly/hutool

一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时提供以下组件:

  • 布隆过滤
  • 缓存
  • 克隆接口
  • 类型转换
  • 日期处理
  • 数据库ORM(基于ActiveRecord思想)
  • 基于DFA有限自动机的多个关键字查找
  • HTTP客户端
  • IO和文件
  • 有用的一些数据结构
  • 日志
  • 反射代理类的简化(AOP切面实现)
  • Setting(一种扩展Properties的配置文件)
  • System(JVM和系统信息等)
  • WatchService的封装(文件变动监控)
  • XXXUtil各种有用的工具类

经常使用的工具类及方法:
StrUtil.isEmpty("ABC"); DateUtil.now(); BeanUtil.copyProperties(source,target); BeanUtil.beanToMap(source,target); HttpUtil


Project Lombok

官网 https://projectlombok.org/
API 参考 https://projectlombok.org/features/index.html
GitHub https://github.com/rzwitserloot/lombok

使用注解 annotation 来减少代码重复,例如 getter、setter、not null检查、生成 Builder 等。下面有一些 Project Lombok 的 feature:

  • val - 自动解析变量的返回类型,并且该变量是 final 类,如
    var foo = example.get(0);//=> final String foo = example.get(0);

  • @NonNull - 自动 check 非空并抛异常;

  • @Cleanup - 自动关闭资源,调用 close() 方法;

  • @Getter / @Setter- 不用再写public int getFoo() {return foo;}了;

  • @ToString - 不用再开启 Debugger 来看某个值了,它能自动生成一个 toString 方法;

  • @EqualsAndHashCode - 更方便地比较两个对象是否相等;

  • @NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor - 自动按顺序生成构造函数;

  • @Data - 同时包括 @ToString, @EqualsAndHashCode,
    @Getter对所有变量, @Setter对所有非 final 变量,
    @RequiredArgsConstructor

常用的
@Data 在类上声明此注解,会自动生成Getter,Setter,equals,hashCode方法 @NonNull 用于参数,检查该参数是否为空 @SneakyThrows 用于方法,有异常自动捕获并抛出 @Log 相当于 声明日志对象 @NoArgsConstructor 无参构造方法 @AllArgsConstructor 全参构造方法 val 自动解析变量的返回类型,并且该变量是 final 修饰的


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 传送门 解读阿里Java开发手册(v1.1.1) - 异常日志 前言 阿里Java开发手册谈不上圣经,但确实是大量...
    kelgon阅读 9,837评论 4 50
  • Lombok是什么lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java ...
    意识流丶阅读 6,542评论 0 5
  • 那些年,我还小,也许几岁,实在记不清了,只记得对猫却十分喜爱。 那个年代,家境不如现在殷实,玩具是非常稀缺的,加之...
    Williamlora阅读 2,854评论 0 1
  • 和海轻姐在一起时她常常问我“你这么会写东西什么时候写写我”。 我说“因为我们的故事还没有到结局,也没有到翻篇的时候...
    杨菲阅读 4,751评论 2 0

友情链接更多精彩内容