Java - HuTool工具的介绍与使用(总)

本篇主要介绍 HuTool工具, 其是 java工具类,对于一些静态方法进行封装,虽然很小,但很全,里面拥有平时我们会用到的工具类,就无需我们自己去封装了

以前我还自己去封装,emmm,我真的太傻了~,但是自己封装也不是不好,但是学会站在巨人的肩膀上,也非常有必要

下面就简单介绍一下 HuTool工具 与 其简单使用
相关链接:

HuTool 工具介绍

Hutool 是一个小而全的 Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,涵盖了Java开发开发中的方方面面

使用 Hutool 可节省开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug

该工具类主要对 文件、流、加密解密、转码、正则、线程、XML等 JDK方法进行封装,组成各种Util工具类,同时提供以下组件:
image
可根据需求对每个模块 单独引入,也可以通过引入hutool-all方式引入所有模块

HuTool工具使用

HuTool 工具 的API文档与官网把其能干的事情说的很详细了,下面主要是列举出工具类能干什么,方法有哪些,顺带可以提一下原理是啥,会用并且懂原理是最好的学习方式

1、导包

使用首先导包,在项目的 pom.xml 中加入以下内容:【Hutool 5.x 支持 JDK8+,JDK7 使用 Hutool 4.x版本】Maven中央仓库

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.0</version>
</dependency>

若使用jar包,可去该 下载jar 网址下载hutool-all-X.X.X.jar即可

2、使用

HuTool 这个工具类提供了非常多的东西,看了下源码,基本上很全,下面对其提供了工具类根据自己的理解分了小类别,每个类别写一个小博客简单介绍一下实现的功能,下面一部分的说明来自官方文档,一部分来自看的源码,这里的源码版本为对应 5.8.0(若与您看的源码有所不同,请查看版本是否(相同)

2.1 基本类型 / 数组 / 数据类型转换 工具类

该类别主要有关于对数组操作、一些基本类型的操作、进制转换 等相关功能进行了封装(API文档)

  • ArrayUtil:数组工具类
  • BooleanUtil :Boolean 类型相关工具类
  • ByteUtil:Byte 类型相关工具类
  • CharUtil:字符工具类
  • StrUtil:字符串工具类
  • NumberUtil:数字工具类
  • EnumUtil:枚举工具类
  • CharsetUtil:字符集工具类
  • HexUtil:十六进制工具类
  • RadixUtil:进制转换工具类
  • PrimitiveArrayUtil:原始类型数组工具类
    介绍链接: Java - HuTool 使用 ArrayUtil、StrUtil等工具类(一)

2.2 Class 与 ClassLoader 相关的判断、加载 工具类

该类别主要对 对象、类、类加载、类的类型判断、反射 等相关功能进行了封装( API 文档

  • ClassLoaderUtil:ClassLoader 工具类
  • ClassUtil:类工具类
  • ObjectUtil:对象工具类
  • TypeUtil:针对Type的工具类封装
  • ReflectUtil:反射工具类
  • ReferenceUtil: 引用工具类
  • JAXBUtil:JAXB(Java Architecture for XML Binding),根据XML Schema产生Java对象
  • SerializeUtil:类序列化工具类
  • ModifierUtil:类修饰符工具类
  • ServiceLoaderUtil:SPI机制中的服务加载工具类
    介绍链接:Java - HuTool 使用 ReflectUtil、ClassUtil等工具类(二)

2.3 常用功能封装 工具类

在项目开发过程中,会涉及到一些信息的有效性验证,例如电话号码、身份证号、社会信用代码,对身份敏感的数据需要脱敏等,下面的工具类就是我们常用的一些工具类的封装

  • PhoneUtil:电话号码工具类
  • IdcardUtil:身份证相关工具类
  • IdUtil:ID生成器工具类
  • RandomUtil:随机工具类
  • ReUtil:正则相关工具类
  • ZipUtil:压缩工具类
  • CreditCodeUtil:统一社会信用代码(GB32100-2015)工具类
  • CoordinateUtil:坐标系转换相关工具类
  • DesensitizedUtil:脱敏工具类
    介绍链接:Java - HuTool 使用 PhoneUtil、ReUtil等工具类(三)

2.4 文件 / 路径 / 系统相关工具类

包括像文件中内容转义、XML文件处理、URL处理、系统属性相关工具类

  • EscapeUtil:转义和反转义工具类
  • XmlUtil:XML工具类
  • HashUtil:Hash算法工具类
  • SystemPropsUtil:系统属性工具
  • URLUtil:URL统一资源定位符相关工具类
  • PageUtil:分页工具类
  • RuntimeUtil:系统运行时工具类
    介绍链接:Java - HuTool 使用 EscapeUtil、XmlUtil等工具类(四)

总结

其实 huTool 工具提供了很多的功能,有些功能也或多或少存在一些问题,其官网有些部分的介绍也进行了说明,但是问题不大,其次,我觉得它的官方文档不是很清晰,API文档应该也是直接在源码用JavaDoc生成的,就看起来很累~

除了这些工具类,其还有很多其他的,比如实现/集成其提供的接口/类实现一些功能,后期学习的时候,如果学习到了,也会在后续的博客补充,不仅要会用,还是想了解一下底层的大概原理是啥

posted @ 2022-11-22 02:27  ajajaz  阅读(1291)  评论(0编辑  收藏  举报