工具类 Util
本小节,介绍项目中使用到的工具类,避免大家重复造轮子。
#1. Hutool
项目使用 Hutool 作为主工具库。Hutool 是国产的一个 Java 工具包,它可以帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以“甜甜的”。
yudao-common
模块的 util
包作为辅工具库,以 Utils 结尾,补充 Hutool 缺少的工具能力。
友情提示:常用的工具类,使用 ⭐ 标记,需要的时候可以找找有没对应的工具方法。
作用 | Hutool | 芋道 Utils |
---|---|---|
数组工具 | ArrayUtil | ArrayUtils |
⭐ 集合工具 | CollUtil | CollectionUtils |
⭐ Map 工具 | MapUtil | MapUtils |
Set 工具 | SetUtils | |
List 工具 | ListUtil | |
文件工具 | FileUtil FileTypeUtil | FileUtils |
压缩工具 | ZipUtil | IoUtils |
IO 工具 | ZipUtil | |
Resource 工具 | ResourceUtil | |
JSON 工具 | JsonUtils | |
数字工具 | NumberUtil | NumberUtils |
对象工具 | ObjectUtil | ObjectUtils |
唯一 ID 工具 | IdUtil | |
⭐ 字符串工具 | StrUtil | StrUtils |
时间工具 | DateUtil | DateUtils |
反射工具 | ReflectUtil | |
异常工具 | ExceptionUtil | |
随机工具 | RandomUtil | RandomUtils |
URL 工具 | URLUtil | HttpUtils |
Servlet 工具 | ServletUtils | |
Spring 工具 | SpringUtil | SpringAopUtils SpringExpressionUtils |
分页工具 | PageUtils | |
校验工具 | ValidationUtil | ValidationUtils |
断言工具 | Assert | AssertUtils |
强烈推荐:
Guava 是 Google 开源的 Java 常用类库,如果你感兴趣,可以阅读 《Guava 学习笔记》 文章。
#2. Lombok
Lombok 是一个 Java 工具,通过使用其定义的注解,自动生成常见的冗余代码,提升开发效率。
如果你没有学习过 Lombok,需要阅读下 《芋道 Spring Boot 消除冗余代码 Lombok 入门》 文章。
在项目的根目录有 lombok.config
全局配置文件,开启链式调用、生成的 toString/hashcode/equals 方法需要调用父方法。如下图所示:
#3. MapStruct
项目使用 MapStruct 实现 VO、DO、DTO 等对象之间的转换。
如果你没有学习过 MapStruct,需要阅读下 《芋道 Spring Boot 对象转换 MapStruct 入门》 文章。
在每个 yudao-module-xxx-biz
模块的 convert
包下,可以看到各个业务的 Convert 接口,如下图所示:
#4. HTTP 调用
① 使用 Feign 实现声明式的调用,可参考《芋道 Spring Boot 声明式调用 Feign 入门 》 文章。
② 使用 Hutool 自带的 HttpUtil 工具类。
版权声明
本文仅代表作者观点,不代表xx立场。
本文系作者授权xxx发表,未经许可,不得转载。
发表评论