统一工具类的意义

pig 尽量避免自己造轮子封装工具类,让代码可读性更高。Hutool帮助我们简化每一行代码,减少每一个方法,然代码可读性、容错性更高。完整文档方便使用 hutool-doc,避免每个开发乱引入造成辣鸡代码。

hutool 提供类哪些功能

一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时提供以下组件:

  • 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、二维码等)
  • 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-all方式引入所有模块。

pig 开发中使用

common-core 模块已引入最新的hutool-all 工具类,系统中可以直接使用无需再次引入。

  1. <!--hutool-->
  2. <dependency>
  3. <groupId>cn.hutool</groupId>
  4. <artifactId>hutool-all</artifactId>
  5. <version>${hutool.version}</version>
  6. </dependency>

使用例子

比如记录日志时候,从request获取参数的字符串

  1. HttpUtil.toParams(request.getParameterMap())

获取当前时间

  1. //当前时间,格式 yyyy-MM-dd HH:mm:ss
  2. DateUtil.now()