📚简介
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 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"});
本文作者为DBC,转载请注明。