Hutool工具类常用操作

DBC 1.3K 0
温馨提示

这篇文章的目的就是记录一下日常生活中我们频繁使用到的相关工具类,因为Hutool的官网实在是太多,虽然很全,但是又不够全,多到根本不知道怎么找,有时候我们只需要一些很简单的操作,然而它还没写出来 [aru_49]

点击下面的简介标题即可前往Hutool官网 [aru_47]

📚简介

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;

Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。

🎁Hutool名称的由来

Hutool = Hu + tool,是原公司项目底层代码剥离后的开源库,“Hu”是公司名称的表示,tool表示工具。Hutool谐音“糊涂”,一方面简洁易懂,一方面寓意“难得糊涂”。

🍺Hutool如何改变我们的coding方式

Hutool的目标是使用一个工具方法代替一段复杂代码,从而最大限度的避免“复制粘贴”代码的问题,彻底改变我们写代码的方式。

 

Hutool工具类常用操作

[aru_128]时间相关

1.时间转成任意字符串

DateUtil.format(date, "yyyy/MM/dd")

2.获取指定月份的第一天和最后一天

        Date dataEnd = DateUtil.endOfMonth(date);

        Date dateStart = DateUtil.beginOfMonth(date);

3.获取上个月的第一天

DateUtil.beginOfDay(DateUtil.lastMonth());

[aru_129]字符串相关

1.字符串的截断(以下说明取自Hutool官网说明)

大自然的搬运工

不得不提一下这个方法,有人说String有了subString你还写它干啥,我想说subString方法越界啥的都会报异常,你还得自己判断,难受死了,我把各种情况判断都加进来了,而且index的位置还支持负数哦,-1表示最后一个字符(这个思想来自于Python,如果学过Python的应该会很喜欢的),还有就是如果不小心把第一个位置和第二个位置搞反了,也会自动修正(例如想截取第4个和第2个字符之间的部分也是可以的哦~) 举个栗子

String str = "abcdefgh";
String strSub1 = StrUtil.sub(str, 2, 3); //strSub1 -> c
String strSub2 = StrUtil.sub(str, 2, -3); //strSub2 -> cde
String strSub3 = StrUtil.sub(str, 3, 2); //strSub2 -> c

实战例子

目的是将长度大于XX的字符串只截取前面的一部分

StrUtil.sub(requestVO.getHighlightPracticeOmit(), 0, TRUNCATION_CHARACTER) + "..."

2.简单的字符串拼接

String template = "{}爱{},就像老鼠爱大米";
String str = StrUtil.format(template, "我", "你"); //str -> 我爱你,就像老鼠爱大米

[aru_130]对象相关

1.DO->VO 对象的简单转换(Hutool版)

BeanUtil.copyProperties(DO, VO);

2.对象复制时,如果为新值为null则保留原来的值,不进行赋值

BeanUtil.copyProperties(projectInsertRequest, projectInfoDO, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));

3.赋值忽略对应字段

BeanUtil.copyProperties(questionnaireUpdateRequest, questionnaireWorkersHelpDO, new String[]{"id"});
温馨提示

这个对象操作其实是基于反射的原理的,不可避免的会造成性能的下降,后面基本不会再更新它的相关操作了,除非有些需求非常急,然后他可以很快速的实现才会做记录了!这里推荐下面这个插件,性能极高!

MapStruct简单使用

2年前 (2022-05-07) 0
Hutool工具类常用操作插图

发表评论 取消回复
表情 图片 链接 代码

分享