名稱的由來
Hutool = Hu + tool,是原公司項目底層代碼剝離後的開源庫,“Hu”是公司名稱的表示,tool表示工具。Hutool諧音“糊塗”,一方面簡潔易懂,一方面寓意“難得糊塗”。
簡介
Hutool是一個小而全的Java工具類庫,通過靜态方法封裝,降低相關API的學習成本,提高工作效率,使Java擁有函數式語言般的優雅,讓Java語言也可以“甜甜的”。
Hutool中的工具方法來自每個使用者的精雕細琢,它涵蓋了Java開發底層代碼中的方方面面,它既是大型項目開發中解決小問題的利器,也是小型項目中的效率擔當;
Hutool是項目中“util”包友好的替代,它節省了開發人員對項目中公用類和公用工具方法的封裝時間,使開發專注于業務,同時可以最大限度的避免封裝不完善帶來的bug。
目标
Hutool的目标是使用一個工具方法代替一段複雜代碼,進而最大限度的避免“複制粘貼”代碼的問題,徹底改變我們寫代碼的方式。
以計算MD5為例:
- 【以前】打開搜尋引擎 -> 搜“Java MD5加密” -> 打開某篇部落格-> 複制粘貼 -> 改改好用
- 【現在】引入Hutool -> SecureUtil.md5()
Hutool的存在就是為了減少代碼搜尋成本,避免網絡上參差不齊的代碼出現導緻的bug。
目前已包含的元件
- hutool-aop ,JDK動态代理封裝,提供非IOC下的切面支援。
- hutool-bloomFilter,布隆過濾,提供一些Hash算法的布隆過濾。
- hutool-cache,簡單緩存實作。
- hutool-core,核心,包括Bean操作、日期、各種Util等。
- hutool-cron,定時任務子產品,提供類Crontab表達式的定時任務。
- hutool-crypto,加密解密子產品,提供對稱、非對稱和摘要算法封裝。
- hutool-db,JDBC封裝後的資料操作,基于ActiveRecord思想。
- hutool-dfa,基于DFA模型的多關鍵字查找。
- hutool-extra,擴充子產品,對第三方封裝(模闆引擎、郵件、Servlet、二維碼、Emoji、FTP、分詞等)。
- hutool-http,基于HttpUrlConnection的Http用戶端封裝。
- hutool-log,自動識别日志實作的日志門面。
- hutool-script,腳本執行封裝,例如Javascript。
- hutool-setting,功能更強大的Setting配置檔案和Properties封裝。
- hutool-system,系統參數調用封裝(JVM資訊等)。
- hutool-json,JSON實作。
- hutool-captcha,圖檔驗證碼實作。
- hutool-poi,針對POI中Excel和Word的封裝。
- hutool-socket,基于Java的NIO和AIO的Socket封裝。
- hutool-jwt,JSON Web Token (JWT)封裝實作。
引入
在pom檔案中添加以下内容,最新的版本可以去官網檢視。
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.16</version>
</dependency>
官網位址
官網:https://hutool.cn/
gitee:https://gitee.com/dromara/hutool
#頭條創作挑戰賽#