Package | Description |
---|---|
cn.hutool.core.annotation |
注解包,提供增强型注解和注解工具类
|
cn.hutool.core.codec |
BaseN以及BCD编码封装
|
cn.hutool.core.exceptions |
特殊异常封装,同时提供异常工具ExceptionUtil
|
cn.hutool.core.io |
IO相关封装和工具类,包括Inputstream和OutputStream实现类,工具包括流工具IoUtil、文件工具FileUtil和Buffer工具BufferUtil
|
cn.hutool.core.lang |
语言特性包,包括大量便捷的数据结构,例如验证器Validator,分布式ID生成器Snowflake等
|
cn.hutool.core.net |
网络相关工具
|
cn.hutool.core.util |
提供各种工具方法,按照归类入口为XXXUtil,如字符串工具StrUtil等
|
cn.hutool.extra.spring |
Spring相关工具封装
|
Modifier and Type | Method and Description |
---|---|
static <T> T |
AnnotationUtil.getAnnotationValue(AnnotatedElement annotationEle,
Class<? extends Annotation> annotationType)
获取指定注解默认值
如果无指定的属性方法返回null |
static <T> T |
AnnotationUtil.getAnnotationValue(AnnotatedElement annotationEle,
Class<? extends Annotation> annotationType,
String propertyName)
获取指定注解属性的值
如果无指定的属性方法返回null |
static Map<String,Object> |
AnnotationUtil.getAnnotationValueMap(AnnotatedElement annotationEle,
Class<? extends Annotation> annotationType)
获取指定注解中所有属性值
如果无指定的属性方法返回null |
Modifier and Type | Method and Description |
---|---|
static String |
PunyCode.decode(String input)
解码 PunyCode为字符串
|
static String |
PunyCode.decodeDomain(String domain)
解码punycode域名
|
static String |
PunyCode.encode(CharSequence input)
将内容编码为PunyCode
|
static String |
PunyCode.encode(CharSequence input,
boolean withPrefix)
将内容编码为PunyCode
|
static String |
PunyCode.encodeDomain(String domain)
punycode转码域名
|
Modifier and Type | Class and Description |
---|---|
class |
InvocationTargetRuntimeException
InvocationTargetException的运行时异常
|
Modifier and Type | Method and Description |
---|---|
static <T> T |
IoUtil.readObj(InputStream in)
从流中读取对象,即对象的反序列化
注意!!!
|
static <T> T |
IoUtil.readObj(InputStream in,
Class<T> clazz)
从流中读取对象,即对象的反序列化,读取后不关闭流
注意!!!
|
static <T> T |
IoUtil.readObj(ValidateObjectInputStream in,
Class<T> clazz)
从流中读取对象,即对象的反序列化,读取后不关闭流
此方法使用了
ValidateObjectInputStream 中的黑白名单方式过滤类,用于避免反序列化漏洞通过构造 ValidateObjectInputStream ,调用ValidateObjectInputStream.accept(Class[])
或者ValidateObjectInputStream.refuse(Class[]) 方法添加可以被序列化的类或者禁止序列化的类。 |
Modifier and Type | Method and Description |
---|---|
static void |
JarClassLoader.loadJar(URLClassLoader loader,
File jarFile)
加载Jar文件到指定loader中
|
Modifier and Type | Method and Description |
---|---|
static String |
URLEncodeUtil.encode(String url)
编码URL,默认使用UTF-8编码
将需要转换的内容(ASCII码形式之外的内容),用十六进制表示法转换出来,并在之前加上%开头。 |
static String |
URLEncodeUtil.encodeAll(String url,
Charset charset)
编码URL
将需要转换的内容(ASCII码形式之外的内容),用十六进制表示法转换出来,并在之前加上%开头。 |
static String |
URLEncodeUtil.encodeFragment(String url)
编码URL,默认使用UTF-8编码
URL的Fragment URLEncoder 默认的编码器针对Fragment,定义如下: fragment = *( pchar / "/" / "?" |
static String |
URLEncodeUtil.encodePathSegment(String url)
编码URL,默认使用UTF-8编码
将需要转换的内容(ASCII码形式之外的内容),用十六进制表示法转换出来,并在之前加上%开头。 |
static String |
URLEncodeUtil.encodeQuery(String url)
编码URL,默认使用UTF-8编码
将需要转换的内容(ASCII码形式之外的内容),用十六进制表示法转换出来,并在之前加上%开头。 |
Modifier and Type | Method and Description |
---|---|
static String |
URLUtil.decode(String url)
解码URL
将%开头的16进制表示的内容解码。 |
static String |
URLUtil.decode(String content,
String charset)
解码application/x-www-form-urlencoded字符
将%开头的16进制表示的内容解码。 |
static Object |
ReflectUtil.getFieldValue(Object obj,
Field field)
获取字段值
|
static Object |
ReflectUtil.getFieldValue(Object obj,
String fieldName)
获取字段值
|
static int |
RuntimeUtil.getPid()
获取当前进程ID,首先获取进程名称,读取@前的ID值,如果不存在,则读取进程名的hash值
|
static Object |
ReflectUtil.getStaticFieldValue(Field field)
获取静态字段值
|
static byte[] |
ZipUtil.gzip(byte[] buf)
Gzip压缩处理
|
static byte[] |
ZipUtil.gzip(File file)
Gzip压缩文件
|
static byte[] |
ZipUtil.gzip(InputStream in)
Gzip压缩文件
|
static byte[] |
ZipUtil.gzip(InputStream in,
int length)
Gzip压缩文件
|
static byte[] |
ZipUtil.gzip(String content,
String charset)
Gzip压缩处理
|
static <T> T |
ReflectUtil.invoke(Object obj,
Method method,
Object... args)
执行方法
对于用户传入参数会做必要检查,包括:
1、忽略多余的参数
2、参数不够补齐默认值
3、传入参数为null,但是目标参数类型为原始类型,做转换
|
static <T> T |
ReflectUtil.invoke(Object obj,
String methodName,
Object... args)
执行对象中指定方法
如果需要传递的参数为null,请使用NullWrapperBean来传递,不然会丢失类型信息
|
static <T> T |
ReflectUtil.invokeStatic(Method method,
Object... args)
执行静态方法
|
static <T> T |
ReflectUtil.invokeWithCheck(Object obj,
Method method,
Object... args)
执行方法
执行前要检查给定参数: 1. |
static Class<?> |
ClassLoaderUtil.loadClass(String name)
加载类,通过传入类的字符串,返回其对应的类名,使用默认ClassLoader并初始化类(调用static模块内容和初始化static属性)
扩展 Class.forName(String, boolean, ClassLoader) 方法,支持以下几类类名的加载:
1、原始类型,例如:int
2、数组类型,例如:int[]、Long[]、String[]
3、内部类,例如:java.lang.Thread.State会被转为java.lang.Thread$State加载
|
static Class<?> |
ClassLoaderUtil.loadClass(String name,
boolean isInitialized)
加载类,通过传入类的字符串,返回其对应的类名,使用默认ClassLoader
扩展 Class.forName(String, boolean, ClassLoader) 方法,支持以下几类类名的加载:
1、原始类型,例如:int
2、数组类型,例如:int[]、Long[]、String[]
3、内部类,例如:java.lang.Thread.State会被转为java.lang.Thread$State加载
|
static Class<?> |
ClassLoaderUtil.loadClass(String name,
ClassLoader classLoader,
boolean isInitialized)
加载类,通过传入类的字符串,返回其对应的类名
此方法支持缓存,第一次被加载的类之后会读取缓存中的类 加载失败的原因可能是此类不存在或其关联引用类不存在 扩展 Class.forName(String, boolean, ClassLoader) 方法,支持以下几类类名的加载:
1、原始类型,例如:int
2、数组类型,例如:int[]、Long[]、String[]
3、内部类,例如:java.lang.Thread.State会被转为java.lang.Thread$State加载
|
static <T> T |
ReflectUtil.newInstance(Class<T> clazz,
Object... params)
实例化对象
|
static <T> T |
ReflectUtil.newInstance(String clazz)
实例化对象
|
static Document |
XmlUtil.readXML(InputStream inputStream)
读取解析XML文件
编码在XML中定义 |
static Document |
XmlUtil.readXML(Reader reader)
读取解析XML文件
|
static void |
ReflectUtil.setFieldValue(Object obj,
Field field,
Object value)
设置字段值
若值类型与字段类型不一致,则会尝试通过 Convert 进行转换若字段类型是原始类型而传入的值是 null,则会将字段设置为对应原始类型的默认值(见 ClassUtil.getDefaultValue(Class) )如果是final字段,setFieldValue,调用这可以先调用 ReflectUtil.removeFinalModify(Field) 方法去除final修饰符 |
static void |
ReflectUtil.setFieldValue(Object obj,
String fieldName,
Object value)
设置字段值
若值类型与字段类型不一致,则会尝试通过 Convert 进行转换若字段类型是原始类型而传入的值是 null,则会将字段设置为对应原始类型的默认值(见 ClassUtil.getDefaultValue(Class) )
如果是final字段,setFieldValue,调用这可以先调用 ReflectUtil.removeFinalModify(Field) 方法去除final修饰符 |
static URI |
URLUtil.toURI(String location)
转字符串为URI
|
static URI |
URLUtil.toURI(String location,
boolean isEncode)
转字符串为URI
|
static URI |
URLUtil.toURI(URL url)
转URL为URI
|
static URI |
URLUtil.toURI(URL url,
boolean isEncode)
转URL为URI
|
static byte[] |
ZipUtil.unGzip(byte[] buf)
Gzip解压处理
|
static String |
ZipUtil.unGzip(byte[] buf,
String charset)
Gzip解压缩处理
|
static byte[] |
ZipUtil.unGzip(InputStream in)
Gzip解压处理
|
static byte[] |
ZipUtil.unGzip(InputStream in,
int length)
Gzip解压处理
|
static File |
ZipUtil.unzip(File zipFile)
解压到文件名相同的目录中,使用UTF-8编码
|
static File |
ZipUtil.unzip(File zipFile,
Charset charset)
解压到文件名相同的目录中
|
static File |
ZipUtil.unzip(File zipFile,
File outFile)
解压,默认使用UTF-8编码
|
static File |
ZipUtil.unzip(InputStream in,
File outFile,
Charset charset)
解压
ZIP条目不使用高速缓冲。 |
static File |
ZipUtil.unzip(String zipFilePath)
解压到文件名相同的目录中,默认编码UTF-8
|
static File |
ZipUtil.unzip(String zipFilePath,
Charset charset)
解压到文件名相同的目录中
|
static File |
ZipUtil.unzip(String zipFilePath,
String outFileDir)
解压,默认UTF-8编码
|
static File |
ZipUtil.unzip(String zipFilePath,
String outFileDir,
Charset charset)
解压
|
static File |
ZipUtil.unzip(ZipInputStream zipStream,
File outFile)
解压
ZIP条目不使用高速缓冲。 |
static URL |
URLUtil.url(URI uri)
|
static File |
ZipUtil.zip(File srcFile)
打包到当前目录,使用默认编码UTF-8
|
static File |
ZipUtil.zip(File zipFile,
boolean withSrcDir,
File... srcFiles)
对文件或文件目录进行压缩
使用默认UTF-8编码 |
static File |
ZipUtil.zip(File srcFile,
Charset charset)
打包到当前目录
|
static File |
ZipUtil.zip(File zipFile,
Charset charset,
boolean withSrcDir,
File... srcFiles)
对文件或文件目录进行压缩
|
static File |
ZipUtil.zip(File zipFile,
Charset charset,
Resource... resources)
对流中的数据加入到压缩文件
路径列表和流列表长度必须一致 |
static File |
ZipUtil.zip(File zipFile,
String[] paths,
InputStream[] ins)
对流中的数据加入到压缩文件
路径列表和流列表长度必须一致 |
static File |
ZipUtil.zip(File zipFile,
String[] paths,
InputStream[] ins,
Charset charset)
对流中的数据加入到压缩文件
路径列表和流列表长度必须一致 |
static File |
ZipUtil.zip(File zipFile,
String path,
InputStream in)
对流中的数据加入到压缩文件
使用默认编码UTF-8 |
static File |
ZipUtil.zip(File zipFile,
String path,
InputStream in,
Charset charset)
对流中的数据加入到压缩文件
|
static File |
ZipUtil.zip(File zipFile,
String path,
String data)
对流中的数据加入到压缩文件,使用默认UTF-8编码
|
static File |
ZipUtil.zip(File zipFile,
String path,
String data,
Charset charset)
对流中的数据加入到压缩文件
|
static File |
ZipUtil.zip(String srcPath)
打包到当前目录,使用默认编码UTF-8
|
static File |
ZipUtil.zip(String srcPath,
Charset charset)
打包到当前目录
|
static File |
ZipUtil.zip(String srcPath,
String zipPath)
对文件或文件目录进行压缩
不包含被打包目录 |
static File |
ZipUtil.zip(String srcPath,
String zipPath,
boolean withSrcDir)
对文件或文件目录进行压缩
|
static File |
ZipUtil.zip(String srcPath,
String zipPath,
Charset charset,
boolean withSrcDir)
对文件或文件目录进行压缩
|
Modifier and Type | Method and Description |
---|---|
static org.springframework.beans.factory.config.ConfigurableListableBeanFactory |
SpringUtil.getConfigurableBeanFactory()
获取
ConfigurableListableBeanFactory |
Copyright © 2024. All rights reserved.