本篇內(nèi)容介紹了“怎么使用Java工具類庫(kù)hutool”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
公司主營(yíng)業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)公司推出光山免費(fèi)做網(wǎng)站回饋大家。
簡(jiǎn)介
Hutool是Hu + tool的自造詞,前者致敬我的“前任公司”,后者為工具之意,諧音“糊涂”,寓意追求“萬(wàn)事都作糊涂觀,無(wú)所謂失,無(wú)所謂得”的境界。
Hutool是一個(gè)Java工具包,也只是一個(gè)工具包,它幫助我們簡(jiǎn)化每一行代碼,減少每一個(gè)方法,讓Java語(yǔ)言也可以“甜甜的”。Hutool最初是我項(xiàng)目中“util”包的一個(gè)整理,后來(lái)慢慢積累并加入更多非業(yè)務(wù)相關(guān)功能,并廣泛學(xué)習(xí)其它開(kāi)源項(xiàng)目精髓,經(jīng)過(guò)自己整理修改,最終形成豐富的開(kāi)源工具集。
功能
一個(gè)Java基礎(chǔ)工具類,對(duì)文件、流、加密解密、轉(zhuǎn)碼、正則、線程、XML等JDK方法進(jìn)行封裝,組成各種Util工具類,同時(shí)提供以下組件:
hutool-aop JDK動(dòng)態(tài)代理封裝,提供非IOC下的切面支持
hutool-bloomFilter 布隆過(guò)濾,提供一些Hash算法的布隆過(guò)濾
hutool-cache 緩存
hutool-core 核心,包括Bean操作、日期、各種Util等
hutool-cron 定時(shí)任務(wù)模塊,提供類Crontab表達(dá)式的定時(shí)任務(wù)
hutool-crypto 加密解密模塊
hutool-db JDBC封裝后的數(shù)據(jù)操作,基于ActiveRecord思想
hutool-dfa 基于DFA模型的多關(guān)鍵字查找
hutool-extra 擴(kuò)展模塊,對(duì)第三方封裝(模板引擎、郵件等)
hutool-http 基于HttpUrlConnection的Http客戶端封裝
hutool-log 自動(dòng)識(shí)別日志實(shí)現(xiàn)的日志門(mén)面
hutool-script 腳本執(zhí)行封裝,例如Javascript
hutool-setting 功能更強(qiáng)大的Setting配置文件和Properties封裝
hutool-system 系統(tǒng)參數(shù)調(diào)用封裝(JVM信息等)
hutool-json JSON實(shí)現(xiàn)
hutool-captcha 圖片驗(yàn)證碼實(shí)現(xiàn)
簡(jiǎn)單測(cè)試
這兩天使用Hutool把Halo里面的一些代碼給替換掉了,不得不說(shuō),用起來(lái)十分順心,下面簡(jiǎn)單介紹一下我用到的一些Hutool的工具類。
SecureUtil(加密解密工具)
主要是在登錄的時(shí)候還有修改密碼的時(shí)候用到的,因?yàn)閿?shù)據(jù)庫(kù)里面的密碼是md5加密處理的,所以登錄的時(shí)候需要先加密之后再到數(shù)據(jù)庫(kù)進(jìn)行查詢,使用Hutool的話,只需要調(diào)用SecureUtil中的md5方法就可以了。
user = userService.userLoginByName(loginName,SecureUtil.md5(loginPwd));
HtmlUtil(HTML工具類)
這個(gè)工具類就比較厲害了,不過(guò)我在Halo當(dāng)中用得最多的還是HtmlUtil.encode,可以將一些字符轉(zhuǎn)化為安全字符,防止xss注入和SQL注入,比如下面的評(píng)論提交。
comment.setCommentAuthor(HtmlUtil.encode(comment.getCommentAuthor()));
這就是防止有小壞蛋故意寫(xiě)一些可執(zhí)行的js代碼,然后提交評(píng)論,在后臺(tái)面板就會(huì)執(zhí)行這一段代碼,比較危險(xiǎn),使用encode方法就可以將<script>標(biāo)簽給轉(zhuǎn)化成<script>,這樣轉(zhuǎn)化之后,js代碼就不會(huì)執(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 過(guò)濾HTML文本,防止XSS攻擊
CronUtil(定時(shí)任務(wù))
這個(gè)工具就更厲害了,完全不需要類似quartz這樣的框架來(lái)做定時(shí)任務(wù),而且CronUtil也不需要任何其他依賴,只需要在resources下建一個(gè)配置文件,然后在程序啟動(dòng)的時(shí)候?qū)⒍〞r(shí)任務(wù)開(kāi)啟就行了,如Halo的定時(shí)備份功能(每天凌晨1點(diǎn)備份一次)。
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(); //啟動(dòng)定時(shí)任務(wù) CronUtil.start(); log.info("定時(shí)任務(wù)啟動(dòng)成功!"); }
“怎么使用Java工具類庫(kù)hutool”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
網(wǎng)頁(yè)題目:怎么使用Java工具類庫(kù)hutool
轉(zhuǎn)載注明:http://chinadenli.net/article18/gjchdp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、電子商務(wù)、軟件開(kāi)發(fā)、虛擬主機(jī)、網(wǎng)站制作、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)