首页 > 编程语言 >Java - HuTool工具的介绍与使用(总)

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

时间:2022-11-22 02:33:07浏览次数:68  
标签:封装 HuTool API 相关 Java 工具

本篇主要介绍 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生成的,就看起来很累~

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

标签:封装,HuTool,API,相关,Java,工具
From: https://www.cnblogs.com/guozhiqiang/p/16913962.html

相关文章

  • Java Swing 学习记录
    目录参考资料什么是Swing?Swing和AWTSwing组件1JFrame窗口2JPanel面板3LayoutManager布局管理器3.1边框布局管理器3.2流式布局管理器3.3卡片布局管理器3.4网......
  • 【云原生】Kubernetes(k8s)Calico 客户端工具 calicoctl
    目录一、概述二、calicoctl安装三、calicoctl简单使用1)认证信息配置2)查看IP资源池3)配置IP池4)IP资源池示例演示5)固定IP示例演示6)网络策略(NetworkPolicy)四、Kube-ip......
  • 硬盘坏道检测工具对比(DiskGenius/HdTunePro/MHDD等)
    说到硬盘检测软件,大家肯定会想到MHDD,但是MHDD真的好用?反正我觉得太难用了,只能在DOS下运行,不能在Win系统下运行;最重要的是只支持IDE硬盘模式,现在的主板几乎全部默认都是AHCI......
  • Javac编译器
    Javac编译器Java技术下的编译期在不同的语境下会有不同的编译器实现产品:1、前端编译器:jdk的javac、EclipseJDT中的增量式编译器2、即时编译器:hotspot虚拟机中的c1、c2......
  • java15源码-ThreadPoolExecutor
    一Executors工具类创建ThreadPoolExecutorSingleThreadExecutornewFixedThreadPoolnewCachedThreadPoolnewScheduledThreadPoolnewSingleThreadScheduledExecuto......
  • JAVA-动漫美女拼图游戏
    代码1packagecom.itheima_02;publicclassApp{publicstaticvoidmain(String[]args){PictureFramepf=newPictureFrame();}}代码2p......
  • openkylin基础 工具箱 查看整机信息
          OS:openKylin-0.7.5-x86_64      blog:师万物 工具箱查看整机信息硬件参数硬件监测驱动管理 学习资源openKylin(开放麒麟)ope......
  • 【Java】Redis保存Java对象
    1.前言这是一篇来自2018年的文章,当时已经在现在这家公司工作。公司刚起步是购买外包公司产品做定制化开发,在开发微信版的过程中遇到了一个问题。由于微信端需要通过H5的入......
  • 为什么开源在线表单工具能做好数据管理?
    在数字化时代,数据的有效应用和管理可以说是企业的无形资产,做好数据管理既能提升办公效率,又能帮助企业从规律的数字化管理中获取高效的管理策略。那么,什么样的开源在线表单......
  • Java自定义类加载器
    通过继承java.lang.ClassLoader可以自定义类加载器。步骤:1、继承ClassLoader。2、读取字节文件到字节数组中。3、使用defineClass(类名,字节数组,off,length):将字节数组转换......