Hutool工具Day01-Hutool工具基本概念

Hutool介紹

  • Hutool是一個Java工具包:
    • 工具包代表了程序員的積累
    • Hutool只是收集了程序員的積累
    • Hutool幾乎涵蓋了工作中大部分業務的工具
    • Hutool是程序員學習中知識的記錄,是填坑的結果

Hutool中的各個模塊

hutool-aop

  • JDK動態代理封裝,提供非IOC下的切面支持
  • 關聯Spring

hutool-bloomFilter

  • 布隆過濾,提供Hash算法的布隆過濾

hutool-cache

  • 簡單緩存實現
  • 關聯Guava的Cache模塊 ,Jodd的Cache模塊

hutool-core

  • Hutool核心工具包,包括Bean操作,日期以及各種Util等
  • 關聯Apache-Commons-Lang

hutool-cron

  • 定時任務模塊,提供類Crontab表達式的定時任務
  • 關聯Quartz,Cron4j

hutool-crypto

  • 加密解密模塊,提供對稱,非對稱和摘要算法封裝
  • 關聯BouncyCastle

hutool-db

  • JDBC封裝後的數據操作,基於ActiveRecord思想
  • 關聯DbUtils,Jfinal的db部分 ,Nutzdao,JOOQ,MyBatis

hutool-dfa

  • 基於DFA模型的多關鍵字查找

hutool-extra

  • 擴展模塊,對第三方封裝:
    • 模板引擎
    • 郵件
    • Servlet
    • 二維碼
    • Emoji
    • FTP
    • 分詞
  • 關聯JavaMail, Zxing, Emoji4j,Commons-net

hutool-http

  • 基於HttpUrlConnection的Http客戶端封裝
  • 關聯OKHttp,HttpClient,Jodd的http模塊

hutool-log

  • 自動識別日誌實現的日誌門面
  • 關聯slf4j

hutool-script

  • 腳本執行封轉

hutool-setting

  • 功能更強大的Setting配置文件和Properties封裝

hutool-system

  • 系統參數調用封裝.比如JVM相關信息

hutool-json

  • JSON實現
  • 關聯FastJson,JackJson,json-lib

hutool-captcha

  • 圖片驗證碼實現
  • 關聯Jcaptcha

hutool-poi

  • 針對POIExcel封裝
  • 關聯POI,Easy-POI

hutool-socket

  • 基於JavaNIOAIOSocket封裝
  • 關聯t-io,Smart-socket,Netty

框架和工具的區別

  • 框架:
    • 解決大問題
    • 解決特定業務問題
    • 解決協作問題
  • 工具:
    • 解決小問題
    • 解決細節問題
    • 解決個體問題
  • 框架決定項目的成敗,工具決定效率的高低

Hutool工具設計原則

  • 方法優於對象: 大多是static方法
  • 自動識別優於用戶定義: 能少傳參數就少傳參數
  • 便捷性與靈活性並存: 有默認參數,也有自定義參數
  • 適配與兼容: 與框架兼容,將學習成本降到最低
  • 可選依賴原則: 不引入任何依賴,需要時用戶自己引入
  • 無侵入原則: 沒有註解,和項目不存在關聯
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章