学会这个,以后不用再写util工具类了

tech2022-09-25  125

一、Hutool是什么?

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率.对于初学者 降低门槛快速上手避免踩坑学习教材 对于大佬 提高效率完善知识

包含组件

一个 Java 基础工具类,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装,组成各种 Util 工具类,同时提供以下组件

前往官网

二、使用步骤

1.引入库

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

2.简单测试

简单介绍一些 Hutool 的工具类

SecureUtil(加密解密工具)

主要是在登录的时候还有修改密码的时候用到的,因为数据库里面的密码是 md5 加密处理的,所以登录的时候需要先加密之后再到数据库进行查询,使用 Hutool 的话,只需要调用 SecureUtil 中的 md5 方法就可以了。

user=userService.userLoginByName(loginName,SecureUtil.md5(loginPwd));

HtmlUtil(HTML 工具类)

可以将一些字符转化为安全字符,防止 xss 注入和 SQL 注入,比如下面的评论提交。

comment.setCommentAuthor(HtmlUtil.encode(comment.getCommentAuthor()));

另外,HtmlUtil 还提供了以下方法,有兴趣的可以去试一下。

HtmlUtil.restoreEscaped 还原被转义的 HTML 特殊字符HtmlUtil.encode 转义文本中的 HTML 字符为安全的字符HtmlUtil.cleanHtmlTag 清除所有 HTML 标签HtmlUtil.removeHtmlTag 清除指定 HTML 标签和被标签包围的内容HtmlUtil.unwrapHtmlTag 清除指定 HTML 标签,不包括内容HtmlUtil.removeHtmlAttr 去除 HTML 标签中的属性HtmlUtil.removeAllHtmlAttr 去除指定标签的所有属性HtmlUtil.filter 过滤 HTML 文本,防止 XSS 攻击

3.cronUtil(定时任务)

这个工具就更厉害了,完全不需要类似 quartz 这样的框架来做定时任务,而且 CronUtil 也不需要任何其他依赖,只需要在 resources 下建一个配置文件,然后在程序启动的时候将定时任务开启就行了,如 Halo 的定时备份功能(每天凌晨 1 点备份一次)。

cc.ryanc.halo.web.controller.admin.BackupController.backupResources = 0 0 1 * * ? cc.ryanc.halo.web.controller.admin.BackupController.backupDatabase = 0 0 1 * * ? cc.ryanc.halo.web.controller.admin.BackupController.backupPosts = 0 0 1 * * ? @Override public void onApplicationEvent(ContextRefreshedEvent event){ this.loadActiveTheme(); this.loadOptions(); this.loadFiles(); this.loadThemes(); //启动定时任务 CronUtil.start(); log.info("定时任务启动成功!"); }

更多功能请去官网查看详情 官网地址:http://www.hutool.cn/.

最新回复(0)