1 常用工具
-
JVisual vm:可以直接通过软件包下载,支持本地以及远程JVM监控 -
JMH:Java Microbenchmark Harness,测试基准组件,精度可达纳秒级 -
JITWatch:JIT日志分析GUI工具
2 日志库
2.1 日志框架
-
JUL:JDK自带日志库,也就是java.util.logging -
Log4j/Log4j2:Apache的一个开源项目,高度可配置 -
Logback:开源日志组件
2.2 日志门面
-
JCL:Jakarta Commons Logging,Apache的一个开源项目 -
slf4j:Simple Logging Facade for Java,常用的一个日志门面
3 JSON库
-
Jackson:Spring默认JSON库,使用广泛 -
Gson:Google开发的功能最全的JSON库,无额外依赖 -
FastJson:阿里出品的JSON库,速度最快,但是在某些复杂类转换上可能会出现问题 -
JSONP:Oracle出品的JSON处理库
4 单元测试库
-
JUnit:一个强大的单元测试库,基本上被所有主流IDE支持 -
Selenium:UI测试工具 -
TestNG:流行的单元测试框架 -
Mockito:Mock框架之一,具有简单的API、优秀的文档以及大量示例 -
Cucumber:一款自动化集成测试工具 -
DBUnit:数据库单元测试工具
5 通用类库
-
Apache Commons:Apache开源的一款强大工具包,包括编解码算法、集合扩展、IO库、压缩库等 -
Google Guava:Google开源的一个被Google Java项目广泛依赖的核心库,包括一些基本工具、集合扩展、缓存、并发工具包、字符串处理等
6 HTTP库
-
HttpClient:Apache HttpComponents HttpClient,一款特性丰富的HTTP库 -
okhttp:一个高效的HTTP库,使用连接池减少请求延迟,gzip压缩减少响应数据大小,缓存响应内容 -
Retrofit:一款类型安全的HTTP库
7 XML解析库
-
Xerces:Apache开源的解析库 -
JAXB:一项根据XML Schema生成Java类的技术 -
Dom4j:一款灵活开源的XML框架 -
XStream:一款XML序列化库
8 Excel读写库
-
Apache POI:提供API对Microsoft Office系列的产品的读写功能,包括Word、Excel、PowerPoint、Visio等
9 字节码库
-
BCEL:Byte Code Engineering Library,Apache开发的字节码操作框架 -
ASM:一个轻量级的字节码操作框架 -
CGLIB:一个强大、高性能、高质量的生成类库 -
Javassist:一个开源的分析、编辑和创建Java字节码的类库 -
ReflactASM:通过代码生成来提供高性能的反射处理库,访问类使用字节码操作而不是反射技术
10 数据库连接池库
-
HikariCP:高性能数据库连接池 -
Druid:阿里开源的一款数据库连接池库,提供了强大的监控和扩展功能,可用于大数据实时查询和分析 -
DBCP2:Apache开发的一款数据库连接池项目
11 PDF库
-
Apache PDF Box:Apache开源的PDF库 -
iText:能够快速产生PDF文件的PDF库
12 日期时间库
-
JDK8自带的LocalDate等 -
JodaTime:一款专门处理日期时间的库
13 集合类库
-
Apache Commons Collections:Apache Commons组件之一,提供一些常用集合的实现以及API封装 -
Google Collections:Google开发的一款强大的集合库 -
HPPC:High Performance Primitive Collections,一款专注高性能和高存储效率优化的集合类库 -
Trove:GNU Trove,一款快速轻量级的集合框架 -
FastUtil:一款Java集合框架
14 加密库
-
Apache Commons Codec:编解码以及加密处理库 -
BouncyCastle:提供了很多哈希算法和加密算法的第三方库
15 HTML解析库
-
jsoup:Java HTML解析器,能够从URL、文件或字符串解析HTML
16 邮件库
-
Simple Java Mail:一款使用强大且简洁API的邮件库 -
Apache Commons Mail:建立在Java Mail API之上的邮件库
17 序列化库
-
MessagePack:一种二进制序列化格式,比JSON更为紧凑,编码更精简高效 -
Protobuf:Google提供的多语言支持二进制序列化库 -
Apache Avro:Hadoop的一个子项目,支持二进制序列化方式 -
kryo:快速高效的二进制序列化框架
18 缓存库
-
Caffeine:高性能缓存工具,支持基于大小、基于时间、基于引用三种淘汰策略,同时拥有着高命中率的特点
19 其他库
-
Selma:映射工具库,最常用的操作是用来复制对象 -
Beetl:一款高性能、多功能的模板处理引擎










