最近更新|軟件分類|軟件專題|軟件排行|手機版|軟件發布hutool框架(java工具類) v4 綠色版
您的位置:广西快乐双彩一彩票控>編程開發 > 編程工具>hutool框架(java工具類) v4 綠色版

查广西快乐双彩走势图:hutool框架(java工具類) v4 綠色版java工具包

網友評分:

相關軟件

軟件介紹

hutool框架是一款很受歡迎的工具包,而且該軟件還使用內置的相關工具來對http客戶端完成封裝,快捷的實現http的請求,因此有需要的用戶趕緊來下載吧!

hutool框架(java工具類)

hutool工具包介紹

Hutool是Hu + tool的自造詞,前者致敬我的“前任公司”,后者為工具之意,諧音“糊涂”,寓意追求“萬事都作糊涂觀,無所謂失,無所謂得”的境界。Hutool是一個Java工具包,也只是一個工具包,它幫助我們簡化每一行代碼,減少每一個方法,讓Java語言也可以“甜甜的”。Hutool最初是我項目中“util”包的一個整理,后來慢慢積累并加入更多非業務相關功能,并廣泛學習其它開源項目精髓,經過自己整理修改,最終形成豐富的開源工具集。

軟件功能

hutool-aop JDK動態代理封裝,提供非IOC下的切面支持

hutool-bloomFilter 布隆過濾,提供一些Hash算法的布隆過濾

hutool-cache 緩存

hutool-dfa 基于DFA模型的多關鍵字查找

hutool-extra 擴展???,對第三方封裝(模板引擎、郵件等)

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的封裝

hutool-core 核心,包括Bean操作、日期、各種Util等

hutool-cron 定時任務???,提供類Crontab表達式的定時任務

hutool-crypto 加密解密???/p>

hutool-db JDBC封裝后的數據操作,基于ActiveRecord思想

軟件特色

1. 便捷性與靈活性并存

所謂便捷性,就是我們在調用一個方法的時候參數要盡量少,只傳必要參數即可,非必要參數使用默認值即可(想想一個方法一堆參數的時候,調用者暈頭轉向不知所云)。

所謂靈活性正好與便捷性相反,要讓一個方法的參數盡量多,為用戶靈活的操作方法提供最大可能性。

這兩個原則看似矛盾,其實只是針對不同場景設定的而已,缺一不可。便捷性強調拿來即用,為快速開發提供可能;靈活性強調最大限度調優,為性能調優和擴展提供便利。

這一原則在針對編碼問題上體現尤為突出,我們的大部分方法都是默認“UTF-8”編碼的,這也是我們推薦的編碼方式,推薦大部分項目使用的編碼。但是一旦有遺留項目使用了類似“GBK”等編碼,沒關系,我們提供在相關方法中提供Charset對象參數,可以自定義編碼。這樣使用這一原則就兼顧了各種項目的情況。

2. 適配與兼容

在Hutool中,適配器模式運用特別廣泛,log??槭逝渲髁鞲鞔罌蚣?,db??槭逝渲髁鞲髦至映睪凸叵凳菘?。這種適配一是提高靈活性,二是可以很好的兼容各大框架,讓Hutool可以在各種復雜項目環境中生存的很好。

適配兼容產生的另一個原則是:你有我配,你無我有。說白了就是:如果你項目中有這個框架,我可以完美適配,如果你沒有引入任何框架,Hutool自身實現了一些邏輯可以很好的工作。

3. 可選依賴原則

在Java項目中依賴常常是個頭疼的問題,不同的框架強依賴另一些框架或包,雖然Maven可以很好的處理沖突問題,但是項目底下滿滿的依賴jar包,是不是無形中拖慢了項目,也增加了復雜性和不確定性?而很多時候,我們是不是只是為了用一個小小的方法,就要引入一個第三方包,誰喜歡這樣臃腫的項目?

Hutool中也會有一些依賴,但是全部都是optional的,在使用中不會關聯依賴,而這些依賴只有在使用者使用到時才會調用,這時可能會報ClassNotFoundException,不用擔心,我們自己引入即可。為什么要這樣做呢?以VelocityUtil這個工具類為例,使用Velocity的人占比極少,我們不能為了這些用戶而強引入Velocity包,而使用這個工具類的人應該明白,我們應該自己引入這個包。

而更多時候,我們需要用到某個方法時,我的做法是將方法拷貝到項目中(Hutool中的方法正在不斷積累),類似于Apache Commons中的方法,Hutool中基本都有取代方法,完全不必要引入。

可選依賴原則讓我們的項目更加精簡,問題也更容易排查。

hutool框架(java工具類)

4. 無侵入原則

Hutool始終是一個工具類而不是框架,這意味著它對項目的侵入幾乎為零,每個方法都是可被代替的,甚至整個Hutool也是可被替換的。這種無侵入性,讓使用者可以更加放心的在項目中引入,也保證了與其它框架完美的兼容。

5. 方法優先于對象

在工具類中,往往以靜態方法為主。方法集中在一個類中,配合IDE查找使用起來是十分便利的。于是Hutool將JDK中許多的類總結抽象為一個方法,這一原則使用最多的就是流的相關方法,這些方法很好的隱藏了XXXInputStream、XXXReader等的復雜性。

6. 自動識別優于用戶定義

其實很多時候,有些參數、設置等是沒有必要我們自己傳入的,完全可以靠邏輯判斷自動完成。一個方法很多時候明明只需要傳3個參數,我們非要傳4個,這多出的一個參數本身就是代碼的一種冗余。

這一原則在Hutool的各個角落都有所體現,尤為明顯的比如log???。構建日志對象的時候,很明顯類名可以動態獲取,何必讓使用者再傳入呢?再比如在db??櫚氖菘馀渲彌?,數據庫驅動命名完全可以根據連接字符串判斷出來,何必要讓用戶傳入?這些問題的在Hutool中都有非常好的封裝,而這一原則也漸漸變成Hutool哲學的一部分。

更新說明

- 拆分項目

- 增加 ThreadUtil.safeSleep方法

- 增加CollectionUtil.addAllIfNotContains方法

- 增加NumberUtil

- 增加hutool-cron???/p>

- 增加 ThreadUtil.waitForDie

- 增加DateUtil.betweenDay方法

- 增加Snowflake算法

- 對Util類加final修飾符,并添加private構造方法

- 增加 ThreadUtil.interupt方法

- Setting中對RuntimeException變為SettingRuntimeException

- [log] LogFactory.setCurrentLogFactory支持傳入LogFactory類

- [core] 增加CollectionUtil.getFirst

- [core] NumberUtil中增加binaryToInt、binaryToLong、getBinaryStr

- 增加Mutable類型

- HttpUtil.downFile增加String參數方法

- 修復NumberUtil.round方法傳入double某些數字無效問題

- 增加FileUtil.getType方法

- 優化整理JSON部分

- 增加ThreadUtil.getThreads、getMainThread方法

- 增強JarClassLoader

- WatchMonitor增加createAll方法

- 增加NetUtil.getLocalhost

- 優化ClassPathResource錯誤提示

- 增加 ArrayUtil.toArray方法

- MathUtil中的方法遷移到NumberUtil,去除MathUtil

- 針對Cache??樽靄峁溝髡?,擴展FileCache

  • 下載地址

點擊報錯軟件無法下載或下載后無法使用,請點擊報錯,謝謝!