xtool 是一个小小的 Java 工具集,遵循简单、可靠的原则,不求大而全,但求小而美。主要包含:
- 字符串、数值、集合、IO等工具类;
- 一些常用自定义注解;
- NLP 相关的数据结构(主要实现:支持并发的高性能的字典树)
详细的使用介绍,请查看 参考文档 。
<dependency>
<groupId>com.igeeksky.xtool</groupId>
<artifactId>xtool</artifactId>
<version>1.2.1</version>
</dependency>
implementation group: 'com.igeeksky.xtool', name: 'xtool', version: '1.2.1'
首先 git clone 项目,然后执行 maven 命令安装
# git clone项目到本地
git clone https://github.com/patricklaux/xtool.git
# 执行maven命令编译
mvn clean install
分支 | 说明 |
---|---|
main | 主分支,用于版本发布 |
dev | 开发分支,用于接受 PR 和修改 |
如您希望参与开发这个类库,请首先 fork 项目到您的仓库,修改 dev 分支并提交 pr,然后等待合并即可。
- 无第三方依赖;
- 缩进采用空格;
- 添加完整注释;
- 加上您的大名;
- 编写单元测试并运行通过。
如您发现任何 bug,或希望添加某类工具,或有任何开发建议,欢迎提交issue。
!!!总之,欢迎 pr,欢迎 issue!!!
Futures
InterruptedException: interrupt currentThread
- change
Futures
API params
- add
AsyncCloseable
- add
GracefulShutdown
- add
RingBuffer
- add
Futures
testcase
- remove
@ParameterNames
- add
ObjectUtils
- tuple move to root package
- add
ImmutableByteArray
KeyValue
和ByteArray
增加静态方法
Futures
增加 awaitAll 方法
- 优化
SimpleJSON
实现:如果 field 为 public,即使无 readMethod,也读取属性值
- 优化
RandomUtils
实现,通过 threadId 计算 index ,并获取数组对应 index 的 Random 实例
- 优化
SimpleJSON
实现,仅获取 readMethod,支持非标准 JavaBean
- remove
ThreadLocalRandom
,change to Random[]
-
add
Codec
-
add
Compressor
-
add
Futures
-
add
ByteArray
-
add
KeyValue
&ExpireKeyValue
- 添加
ConcurrentHashSet
- 添加
PlatformThreadFactory
- 添加
VirtualThreadFactory
- 升级为支持 JDK 21,不再支持 JDK 17
- 添加
SimpleJSON
(仅实现对象转 JSONString) - 升级为支持 JDK 17,不再支持 JDK 8
- 添加
RandomUtils
- 添加 Maps.newHashMap方法
- 添加 IOUtils.closeQuietly方法
Found
删除 node 字段,NodeHelper
增加精确匹配方法
- 调整部分方法返回值
-
增加测试用例
-
编写参考文档
-
调整部分代码
- 调整
DigestUtils
默认小写
- 补充注释
- 增加测试用例
- 删除
Lists
- 常用工具
- 字典树