這篇文章將為大家詳細(xì)講解有關(guān)Hutool怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、遼源網(wǎng)絡(luò)推廣、小程序定制開發(fā)、遼源網(wǎng)絡(luò)營銷、遼源企業(yè)策劃、遼源品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供遼源建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:vcdvsql.cn
Hutool 是一個 Java 工具包,也只是一個工具包,它幫助我們簡化每一行代碼,減少每一個方法,讓 Java 語言也可以 “甜甜的”。Hutool 最初是我項目中 “util” 包的一個整理,后來慢慢積累并加入更多非業(yè)務(wù)相關(guān)功能,并廣泛學(xué)習(xí)其它開源項目精髓,經(jīng)過自己整理修改,最終形成豐富的開源工具集。(抄自作者簡介)
功能
一個 Java 基礎(chǔ)工具類,對文件、流、加密解密、轉(zhuǎn)碼、正則、線程、XML 等 JDK 方法進(jìn)行封裝,組成各種 Util 工具類,同時提供以下組件:
hutool-aop JDK 動態(tài)代理封裝,提供非 IOC 下的切面支持
hutool-bloomFilter 布隆過濾,提供一些 Hash 算法的布隆過濾
hutool-cache 緩存
hutool-core 核心,包括 Bean 操作、日期、各種 Util 等
hutool-cron 定時任務(wù)模塊,提供類 Crontab 表達(dá)式的定時任務(wù)
hutool-crypto 加密解密模塊
hutool-db JDBC 封裝后的數(shù)據(jù)操作,基于 ActiveRecord 思想
hutool-dfa 基于 DFA 模型的多關(guān)鍵字查找
hutool-extra 擴展模塊,對第三方封裝(模板引擎、郵件等)
hutool-http 基于 HttpUrlConnection 的 Http 客戶端封裝
hutool-log 自動識別日志實現(xiàn)的日志門面
hutool-script 腳本執(zhí)行封裝,例如 Javascript
hutool-setting 功能更強大的 Setting 配置文件和 Properties 封裝
hutool-system 系統(tǒng)參數(shù)調(diào)用封裝(JVM 信息等)
hutool-json JSON 實現(xiàn)
hutool-captcha 圖片驗證碼實現(xiàn)
簡單測試
這兩天使用 Hutool 把 Halo 里面的一些代碼給替換掉了,不得不說,用起來十分順心,下面簡單介紹一下我用到的一些 Hutool 的工具類。
SecureUtil(加密解密工具)
主要是在登錄的時候還有修改密碼的時候用到的,因為數(shù)據(jù)庫里面的密碼是 md5 加密處理的,所以登錄的時候需要先加密之后再到數(shù)據(jù)庫進(jìn)行查詢,使用 Hutool 的話,只需要調(diào)用 SecureUtil 中的 md5 方法就可以了。
user = userService.userLoginByName(loginName,SecureUtil.md5(loginPwd));
HtmlUtil(HTML 工具類)
這個工具類就比較厲害了,不過我在 Halo 當(dāng)中用得最多的還是 HtmlUtil.encode,可以將一些字符轉(zhuǎn)化為安全字符,防止 xss 注入和 SQL 注入,比如下面的評論提交。
comment.setCommentAuthor(HtmlUtil.encode(comment.getCommentAuthor()));
這就是防止有小壞蛋故意寫一些可執(zhí)行的 js 代碼,然后提交評論,在后臺面板就會執(zhí)行這一段代碼,比較危險,使用 encode 方法就可以將 標(biāo)簽給轉(zhuǎn)化成,這樣轉(zhuǎn)化之后,js 代碼就不會執(zhí)行了。
另外,HtmlUtil 還提供了以下方法,有興趣的可以去試一下。
HtmlUtil.restoreEscaped 還原被轉(zhuǎn)義的 HTML 特殊字符
HtmlUtil.encode 轉(zhuǎn)義文本中的 HTML 字符為安全的字符
HtmlUtil.cleanHtmlTag 清除所有 HTML 標(biāo)簽
HtmlUtil.removeHtmlTag 清除指定 HTML 標(biāo)簽和被標(biāo)簽包圍的內(nèi)容
HtmlUtil.unwrapHtmlTag 清除指定 HTML 標(biāo)簽,不包括內(nèi)容
HtmlUtil.removeHtmlAttr 去除 HTML 標(biāo)簽中的屬性
HtmlUtil.removeAllHtmlAttr 去除指定標(biāo)簽的所有屬性
HtmlUtil.filter 過濾 HTML 文本,防止 XSS 攻擊
CronUtil(定時任務(wù))
這個工具就更厲害了,完全不需要類似 quartz 這樣的框架來做定時任務(wù),而且 CronUtil 也不需要任何其他依賴,只需要在 resources 下建一個配置文件,然后在程序啟動的時候?qū)⒍〞r任務(wù)開啟就行了,如 Halo 的定時備份功能(每天凌晨 1 點備份一次)。
cron.setting:
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(); //啟動定時任務(wù) CronUtil.start(); log.info("定時任務(wù)啟動成功!"); }
關(guān)于“Hutool怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
當(dāng)前文章:Hutool怎么用
新聞來源:http://vcdvsql.cn/article46/jhgghg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、電子商務(wù)、網(wǎng)頁設(shè)計公司、網(wǎng)站設(shè)計公司、網(wǎng)站設(shè)計、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)