不要再重复造轮子了,Hutool 这款开源工具类库贼好使

Hutool是一款强大的Java工具类库,它减少了开发人员对常用工具方法的封装时间。文章介绍了如何引入Hutool,并详细讲解了其在类型转换、日期时间、IO操作、字符串工具、反射工具等方面的实用功能,帮助开发者更高效地进行开发工作。
摘要由CSDN通过智能技术生成

01、引入 Hutool

Maven 项目只需要在 pom.xml 文件中添加以下依赖即可。

<dependency>    <groupId>cn.hutool</groupId>    <artifactId>hutool-all</artifactId>    <version>5.4.3</version></dependency>

Hutool 的设计思想是尽量减少重复的定义,让项目中的 util 包尽量少。一个好的轮子可以在很大程度上避免“复制粘贴”,从而节省我们开发人员对项目中公用类库和公用工具方法的封装时间。同时呢,成熟的开源库也可以最大限度的避免封装不完善带来的 bug。

就像作者在官网上说的那样:

  • 以前,我们打开搜索引擎 -> 搜“Java MD5 加密” -> 打开某篇博客 -> 复制粘贴 -> 改改,变得好用些

有了 Hutool 以后呢,引入 Hutool -> 直接 SecureUtil.md5()

Hutool 对不仅对 JDK 底层的文件、流、加密解密、转码、正则、线程、XML 等做了封装,还提供了以下这些组件:

非常多,非常全面,鉴于此,我只挑选一些我喜欢的来介绍下(偷偷地告诉你,我就是想偷懒)。

02、类型转换

类型转换在 Java 开发中很常见,尤其是从 HttpRequest 中获取参数的时候,前端传递的是整形,但后端只能先获取到字符串,然后再调用 parseXXX() 方法进行转换,还要加上判空,很繁琐。

Hutool 的 Convert 类可以简化这个操作,可以将任意可能的类型转换为指定类型,同时第二个参数 defaultValue 可用于在转换失败时返回一个默认值。

String param = "10";
int paramInt = Convert.toInt(param);
int paramIntDefault = Convert.toInt(param, 0);

把字符串转换成日期:

String dateStr = "2022年06月24日";
Date date = Convert.toDate(dateStr);

把字符串转成 Unicode:

String unicodeStr = 
String unicode = Convert.strToUnicode(unicodeStr);

03、日期时间

JDK 自带的 Date 和 Calendar 不太好用,Hutool 封装的 DateUtil 用起来就舒服多了!

获取当前日期:

Date date = DateUtil.date();

DateUtil.date() 返回的其实是 DateTime,它继承自 Date 对象,重写了 toString() 方法,返回 yyyy-MM-dd HH:mm:ss 格式的字符串。

有些小伙伴是不是想看看我写这篇文章的时间,输出一下给大家看看:

System.out.println(date);// 2022-06-24 04:28:02

字符串转日期:

String dateStr = "2022-06-24";
Date date = DateUtil.parse(dateStr);

DateUtil.parse() 会自动识别一些常用的格式,比如说:

  • yyyy-MM-dd HH:mm:ss

  • yyyy-MM-dd

  • HH:mm:ss

  • yyyy-MM-dd HH:mm

  • yyyy-MM-dd HH:mm:ss.SSS

还可以识别带中文的:

  • 年月日时分秒

格式化时间差:

String dateStr1 = "2022-06-24 22:33:23";
Date date1 = DateUtil.parse(dateStr1);

String dateStr2 = "2022-7-01 23:34:27";
Date date2 = DateUtil.parse(dateStr2);

long betweenDay = DateUtil.between(date1, date2, DateUnit.MS);

// 输出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倾听铃的声

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值