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方法
  • 自动识别优于用户定义: 能少传参数就少传参数
  • 便捷性与灵活性并存: 有默认参数,也有自定义参数
  • 适配与兼容: 与框架兼容,将学习成本降到最低
  • 可选依赖原则: 不引入任何依赖,需要时用户自己引入
  • 无侵入原则: 没有注解,和项目不存在关联
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章