跳至主要內容

工具库


每个项目都需要很多工具库完成业务操作,比如转换字符串、格式化日期时间、处理集合等等。若无特殊需要,要尽量使用业界成熟的工具库。这些工具库设计精良,久经群众考验,有技术团队定期维护,即便爆出安全问题也很快有补丁版本。

1 Apache Commons组件

Apache Commons组件提供了关于字符串、集合、IO操作等工具方法,如下所示:

组件介绍
beanUtils进行JavaBean的各种操作,克隆对象、属性等等
codec处理常用的编码方法的工具类包,例如DES、SHA1、MD5、Base64等.
collectionsjava集合框架操作
configurationjava应用程序的配置管理类库
ioio工具的封装
lang3Java基本对象方法的工具类包 如StringUtils、ArrayUtils等等.
logging日志接口
net客户端和服务器端的数据验证框架

2 Joda-Time

Joda-Time 是一个强大、易用、高效的日期时间处理框架,可以完全替代 JDK 的相关API 。

<dependency>
    <groupId>joda-time</groupId>
    <artifactId>joda-time</artifactId>
    <version>2.9.3</version>
</dependency>

3 Google Guava

Google贡献的核心Java库,广泛用于Google的大多数Java项目,提供了不可变集合、图库和并发、IO操作、字符串等实用的函数。

<dependency>
	<groupId>com.google.guava</groupId>
	<artifactId>guava</artifactId>
	<version>32.1.2-jre</version>
</dependency>

7.1 Fastjson2

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
    <artifactId>fastjson2</artifactId>
    <version>2.0.8</version>
</dependency>

3 Hutool

Hutool是一个小而全的Java工具类库,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成Util工具类。

组件介绍
hutool-aopJDK动态代理封装,提供非IOC下的切面支持
hutool-bloomFilter布隆过滤,提供一些Hash算法的布隆过滤
hutool-cache缓存
hutool-core核心,包括Bean操作、日期、各种Util等
hutool-cron定时任务模块,提供类Crontab表达式的定时任务
hutool-crypto加密解密模块
hutool-dbJDBC封装后的数据操作,基于ActiveRecord思想
hutool-dfa基于DFA模型的多关键字查找
hutool-extra扩展模块,对第三方封装(模板引擎、邮件等)
hutool-http基于HttpUrlConnection的Http客户端封装
hutool-log自动识别日志实现的日志门面
hutool-script脚本执行封装,例如Javascript
hutool-setting功能更强大的Setting配置文件和Properties封装
hutool-system系统参数调用封装(JVM信息等)
hutool-jsonJSON实现
hutool-captcha图片验证码实现

4 Lombok

Lombok 是一种 Java 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现 Lombok,开发人员可以节省构建诸如 hashCode() 和 equals() 这样的方法以及以往用来分类各种 accessor 和 mutator 的大量时间。

上次编辑于: