| 程序包 | 说明 |
|---|---|
| org.dromara.hutool.core.bean |
Bean相关操作,包括Bean信息描述,Bean路径表达式、动态Bean、Bean工具等
|
| org.dromara.hutool.core.cache |
提供简易的缓存实现,此模块参考了jodd工具中的Cache模块
|
| org.dromara.hutool.core.cache.impl |
提供各种缓存实现
|
| org.dromara.hutool.core.func |
函数封装
接口灵感来自于ActFramework 一个函数接口代表一个一个函数,用于包装一个函数为对象 在JDK8之前,Java的函数并不能作为参数传递,也不能作为返回值存在,此接口用于将一个函数包装成为一个对象,从而传递对象 |
| org.dromara.hutool.core.lang |
语言特性包,包括大量便捷的数据结构,包括:
ANSI:ANSI编码
Builder:构建器
Caller:查找调用者
Copier:拷贝(复制)
Generator:生成器
Getter:getXXX抽象
Intern:规范化表示形式
Loader:加载器的抽象
Mutable:可变值对象封装
Range:区间和边界封装
Tuple:元组
|
| org.dromara.hutool.core.map |
Map相关封装,提供特殊Map实现以及Map工具MapUtil
|
| org.dromara.hutool.core.map.multi |
多参数类型的Map实现,包括集合类型值的MultiValueMap和Table
MultiValueMap:一个键对应多个值的集合的实现,类似于树的结构。 |
| 限定符和类型 | 方法和说明 |
|---|---|
BeanDesc |
BeanDescCache.getBeanDesc(Class<?> beanClass,
SerSupplier<BeanDesc> supplier)
获得属性名和
BeanDescMap映射 |
Map<String,PropertyDescriptor> |
BeanInfoCache.getPropertyDescriptorMap(Class<?> beanClass,
boolean ignoreCase,
SerSupplier<Map<String,PropertyDescriptor>> supplier)
获得属性名和
PropertyDescriptorMap映射 |
| 限定符和类型 | 方法和说明 |
|---|---|
V |
Cache.get(K key,
boolean isUpdateLastAccess,
long timeout,
SerSupplier<V> supplier)
从缓存中获得对象,当对象不在缓存中或已经过期返回SerSupplier回调产生的对象
调用此方法时,会检查上次调用时间,如果与当前时间差值大于超时时间返回
null,否则返回值。 |
V |
Cache.get(K key,
boolean isUpdateLastAccess,
SerSupplier<V> supplier)
从缓存中获得对象,当对象不在缓存中或已经过期返回SerSupplier回调产生的对象
调用此方法时,会检查上次调用时间,如果与当前时间差值大于超时时间返回
null,否则返回值。 |
V |
SimpleCache.get(K key,
Predicate<V> validPredicate,
SerSupplier<V> supplier)
从缓存中获得对象,当对象不在缓存中或已经过期返回SerSupplier回调产生的对象
|
V |
SimpleCache.get(K key,
SerSupplier<V> supplier)
从缓存中获得对象,当对象不在缓存中或已经过期返回SerSupplier回调产生的对象
|
default V |
Cache.get(K key,
SerSupplier<V> supplier)
从缓存中获得对象,当对象不在缓存中或已经过期返回SerSupplier回调产生的对象
调用此方法时,会检查上次调用时间,如果与当前时间差值大于超时时间返回
null,否则返回值。 |
| 限定符和类型 | 方法和说明 |
|---|---|
V |
NoCache.get(K key,
boolean isUpdateLastAccess,
long timeout,
SerSupplier<V> supplier) |
V |
AbstractCache.get(K key,
boolean isUpdateLastAccess,
long timeout,
SerSupplier<V> supplier) |
V |
NoCache.get(K key,
boolean isUpdateLastAccess,
SerSupplier<V> supplier) |
V |
AbstractCache.get(K key,
boolean isUpdateLastAccess,
SerSupplier<V> supplier) |
V |
NoCache.get(K key,
SerSupplier<V> supplier) |
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> SerSupplier<T> |
SerSupplier.last(SerSupplier<T>... serSups)
last
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> SerSupplier<T> |
SerSupplier.last(SerSupplier<T>... serSups)
last
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> T |
Singleton.get(String key,
SerSupplier<T> supplier)
获得指定类的单例对象
对象存在于池中返回,否则创建,每次调用此方法获得的对象为同一个对象 |
static <T> Opt<T> |
Opt.ofTry(SerSupplier<T> supplier) |
| 限定符和类型 | 方法和说明 |
|---|---|
Dict |
Dict.setFields(SerSupplier<?>... fields)
通过lambda批量设置值
实际使用时,可以使用getXXX的方法引用来完成键值对的赋值: User user = GenericBuilder.of(User::new).with(User::setUsername, "hutool").build(); Dict.create().setFields(user::getNickname, user::getUsername); |
| 构造器和说明 |
|---|
CollectionValueMap(SerSupplier<Collection<V>> collFactory)
创建一个多值映射集合,默认基于
HashMap与collFactory生成的集合实现 |
CollectionValueMap(Supplier<Map<K,Collection<V>>> mapFactory,
SerSupplier<Collection<V>> collFactory)
创建一个多值映射集合,基于
mapFactory与collFactory实现 |
Copyright © 2024. All rights reserved.