Hutool 3.1.2 发布,Java 工具集

Hutool 是一个Java工具包,提供了丰富的文件、日期、日志、正则、字符串、配置文件等工具方法,并封装了一套简单易用的ORM框架。

主页:http://hutool.cn/

文档:http://hutool.mydoc.io/ (感谢开源中国提供非常好用的Team文档平台)

此次版本最主要的更新是POI模块加入了Sax方式读取Excel2007(03期待后续版本),还有就是bean操作不再使用JDK的内省,而改为Hutool自行实现,这样就可以支持返回this的Setter方法了,这也是众望所归的功能。

同时要特别推荐阿里家的P3C代码规约检查插件,神器一枚,3.1.2版本中大量的代码修复都是此插件功劳。传送门:https://my.oschina.net/u/3708488/blog/1551339

3.1.2 更新内容:

新特性

  • ArrayUtil增加containsIgnoreCase和indexOfIgnoreCase方法

  • DbUtil增加toSqlDate和toSqlTimestamp和setShowSqlGlobal方法

  • RuntimeUtil增加可选编码的方法

  • CharsetUtil.systemCharset修改逻辑,Windows使用GBK编码

  • db模块加强异常提示信息

  • 升级可选依赖版本

  • Setting增加getandRemove和getAndRemoveStr方法,并去除db模块中配置键别名获取相关冗余方法

  • FileUtil增加subPath、getPathEle方法(针对JDK7的Path对象封装)

  • 改进WatchMonitor,文件不存在时根据path判断是文件还是目录

  • 参阅iceroot库,增加DateUtil增加timeToSecond和secondToTime方法(感谢@【北京】宁静)

  • DateUtil.beginOfWeek加入方法可选一周的第一天,且默认周一为第一天(感谢@【北京】flyinke)

  • Hutool-db支持value为"= null"转换为"is null"

  • 工具类继承支持(去除private构造)

  • 增加getGroup和findAllGroup两类方法

  • UrlUtil增加utf-8重载(感谢@【北京】宁静)

  • 按照Ali规范整理代码。Cache模块中定时清理改为定时任务池方式

  • Http模块全局Header支持

  • JSON模块增加JSONStrFromater,用于格式化非标准的JSON字符串

  • 增加BeanDesc代替JDK的BeanInfo,提供更灵活的Getter和Setter

  • BeanUtil.fillBean方法使用BeanDesc替换

  • 增加FileAppender类用于积累追加文件内容

  • 增加ReferenceUtil用于工具化创建软引用和弱引用

  • ReflectUtil中将异常包装为UtilExcception,并增加invoke重载支持字符串

  • ClassUtil中部分方法被标记过时,大部分与ReflectUtil中方法重叠,通过注释指引到ReflectUtil

  • core包中加入验证码生成

  • 弃用Random类,改为ThreadLocalRandom

  • extra模块中增加MailUtil发送邮件工具(依赖javax.mail)

  • StrUtil增加strip和stripIgnoreCase方法

  • poi模块新增ExcelSaxReader,对大数据量的Excel读取增加支持

Bug修复

  • db模块修复Oracle中传入java.util.Date对象无法识别类型问题(默认按照Timestamp处理)(感谢@【杭州】wiley)

  • 修复RuntimeUtil中乱码和单条带参数命令执行失败问题(@【北京】宁静)

  • 修复ThreadUtil newExecutorByBlockingCoefficient中不能传入0的bug(issue#IF7UN@Gitee)

  • 修复CollUtil.split的bug(issue#IF7UT@Gitee)

  • 修复Page.getEndPosition()错误(感谢@【深圳】尘风了了)

  • 修复Http中head方法读取body失败问题,略过读取body(issue#IFA3C@Gitee)

  • 修复从正文中获取编码类型的错误(issue#IFBYO@Gitee)

  • 修复IOUtil.readBytes中读取为0导致的越界问题(issue#46@Github)

  • 修复Crypto模块中DESede算法密钥生成bug

  • 修复JSON转Bean时在ignoreError模式下类型不匹配时无法忽略问题

  • 修复RSA分组加密中中文导致的问题(pr#47@Github)

  • 修复NumberUtil.equals方法的一个坑(精度不同导致不同)(感谢@【北京】Dull)

  • 修复StrUtil中部分方法判空后返回原值导致的空指针问题

Read article here – 

Hutool 3.1.2 发布,Java 工具集