导入依赖
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.5.11</version>
</dependency>
1、日期时间工具DateUtil
相比SimpleDateFormat,使用更为简便,功能更全。
@Test
public void test01(){
// 获取当前时间字符串 格式:yyyy-MM-dd HH:mm:ss
String now = DateUtil.now();
// 获取当前时间字符串 格式:yyyy-MM-dd
String today = DateUtil.today();
// 获取当前时间 Date类型
DateTime date = DateUtil.date();
// 格式转换:String ==> Date
DateTime dateTime = DateUtil.parse(now);
// 格式转换:Date ==> String
String dateStr = DateUtil.formatDate(date);
// 日期偏移 向后推三天
DateTime dateAfterThreeDays = DateUtil.offsetDay(date, 3);
// 日期偏移 向后推6小时
DateTime dateAfterSixHours = DateUtil.offsetHour(date, 6);
//计算时间差
long days = DateUtil.between(date, dateAfterThreeDays, DateUnit.DAY);
}
2、随机数生成
//使用场景:数字验证码
RandomUtil.randomNumbers(6); //生成随机的XX位整数。
RandomUtil.randomString(6); //生成随机字母+数字的字符串
3、JSON工具类
JSONObject obj = JSONUtil.createObj();
List list = new ArrayList();
list.add(new User(1,"xiaozhang","女",23));
list.add(new User(1,"xiaowang","男",23));
obj.put("code","200");
obj.put("msg","success");
obj.put("date",list);
System.out.println(obj.toString());
4、分页查询
(1)分页条件构建
(2)分页彩虹算法
@Test
public void test02(){
// 分页条件构建
// 参数 pageNo(第几页):1 countPerOPage(每页显示数据条数):5
int[] pageParam = PageUtil.transToStartEnd(1, 5);
// 结果 [0, 5]
System.out.println(Arrays.toString(pageParam));
// 分页页数显示(分页彩虹算法)
// 参数 currentPage(当前第几页):11 pageCount(总页数): 12 displayCount(显示的页码按钮数)
int[] rainbow = PageUtil.rainbow(11, 12,5);
// 结果 [8, 9, 10, 11, 12]
System.out.println(Arrays.toString(rainbow));
}
5、合并数组
//合并多个泛型数组
String[] strArr = new String[]{"1","2","3"};
String[] strArr2 = new String[]{"4","5","6"};
Serializable[] serializables = ArrayUtil.addAll(strArr, strArr2);
System.out.println(Arrays.toString(serializables));
6、Validate校验
//校验邮箱
boolean email = Validator.isEmail("12@126.com");
List list = null;
//校验Object对象是否为空
boolean empty = Validator.isEmpty(list);
//校验身份证
boolean citizenId = Validator.isCitizenId("XXX");
7、分割List集合
List<String> list = new ArrayList<String>(Arrays.asList(new String[]{"a","b","c"}));
//用指定字符分割集合
String join = CollUtil.join(list, ",");