一、使用场景
官网:
https://hutool.cn/docs/
1.1、 随机生成随机数字
RandomUtil.randomNumbers(字符串个数); // 生成多个随机数字
1.2、转换对象
BeanUtil.copyProperties(值, 目标bean.class) // BeanUtil.copyProperties(user, UserDTO.class)
BeanUtil.beanToMap() // 将bean对象转化为Map
1.3、UUID是否携带中划线
UUID.randomUUID().toString(true); // 不带
UUID.randomUUID().toString(false); // 带
1.4、判空
StrUtil.isBlank
1.5、验证码(常用)
//定义图形验证码的长、宽、验证码字符数、干扰线宽度
ShearCaptcha captcha = CaptchaUtil.createShearCaptcha(200, 100, 4, 4);
//ShearCaptcha captcha = new ShearCaptcha(200, 100, 4, 4);
//图形验证码写出,可以写出到文件,也可以写出到流
captcha.write("d:/shear.png");
//验证图形验证码的有效性,返回boolean值
captcha.verify("1234");
LineCaptcha 线段干扰的验证码
//定义图形验证码的长和宽
LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(200, 100);
//图形验证码写出,可以写出到文件,也可以写出到流
lineCaptcha.write("d:/line.png");
//输出code
Console.log(lineCaptcha.getCode());
//验证图形验证码的有效性,返回boolean值
lineCaptcha.verify("1234");
//重新生成验证码
lineCaptcha.createCode();
lineCaptcha.write("d:/line.png");
//新的验证码
Console.log(lineCaptcha.getCode());
//验证图形验证码的有效性,返回boolean值
lineCaptcha.verify("1234");
1.6、表情Emoji
1.6.1、加入依赖
<dependency>
<groupId>com.vdurmont</groupId>
<artifactId>emoji-java</artifactId>
<version>4.0.0</version>
</dependency>
1.6.1、使用
1、转义Emoji字符
String alias = EmojiUtil.toAlias("😄");//:smile:
2、将转义的别名转为Emoji字符
String emoji = EmojiUtil.toUnicode(":smile:");//😄
3、将字符串中的Unicode Emoji字符转换为HTML表现形式
String alias = EmojiUtil.toHtml("😄");//👦
1.7、分页
将页数和每页条目数转换为开始位置和结束位置。 此方法用于不包括结束位置的分页方法。
int[] startEnd1 = PageUtil.transToStartEnd(0, 10);//[0, 10]
int[] startEnd2 = PageUtil.transToStartEnd(1, 10);//[10, 20]