Java 的工具类提供了开发的便利,日常开发任务中有大量要处理字符串,文件,IO 流,甚至是 Excel 的情况,重复造轮子不仅费时费力,还可能 bug 一堆
今天将常用的 google
,apache
,lombok
,alibaba
开源库,以及一款小众的工具库 Hutool
做个总结,提高开发效率,从引用它们开始
google guava
guava 封装了这些工具:集合,缓存,原生类型,数学运算,排序,字符串处理,I/O 等
依赖方式
maven
1 2 3 4 5 6 7
| <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>28.2-jre</version> <!-- for Android: --> <version>28.2-android</version> </dependency>
|
gradle
1 2 3 4
| implementation("com.google.guava:guava:28.2-jre")
// for Android: implementation("com.google.guava:guava:28.2-android")
|
apache commons
- CLI 针对命令行的处理,校验等
- Codec 针对编解码的库,比如 Hex,Base64
- IO 针对流的实现,文件过滤,文件比较,文件拷贝等
- Math 包含的数学和统计
- Lang 针对 Java.lang 的扩展
- Collections 对 Java 的集合进行了扩展
依赖方式参考 maven 仓库,每一个包对应一种依赖
https://mvnrepository.com/search?q=apache+commons
lombok
用来简化 POJO 的 setter, getter, toString
等,让代码书写非常简洁,只需要添加其注解即可
比如:
1 2 3 4 5 6 7
| @Getter @Setter public class javaBean { private String name; private String age; private String gender; }
|
依赖方式
maven
1 2 3 4 5
| <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok-maven-plugin</artifactId> <version>1.18.12.0</version> </dependency>
|
同时,还需要在 IDEA 上安装其插件
alibaba
easyExcel 用来处理 Excel 能节省大量内存空间,避免 OOM
依赖方式
maven
1 2 3 4 5
| <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.6</version> </dependency>
|
是一款国人开发的工具库,集合了:类型转换,日期时间,IO 流处理,JavaBean,字符串处理,URL 处理,文本操作,比较器 等等
几乎涵盖了上面介绍的 google, apache, alibaba 的工具,但由于比较小众,稳定性未知,开发个人,或者小型项目的时候可以尝试使用
依赖方式
maven
1 2 3 4 5
| <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.2.5</version> </dependency>
|