Releases: opengoofy/crane4j
Releases · opengoofy/crane4j
2.9.0 (2024-06-30)
2.9.0 (2024-06-30)
这是一个新特性版本,修复了一些已知问题,添加了一些新功能。
具体内容参见:Milestone。
Feature
- Crane4jTemplate 需要提供一个用于直接添加/刷新容器缓存数据的 API;
- 拆卸操作支持非平铺模式;
- 多对多装配时,若被 ref 指向的字段是字符串,则自动按指定的分隔符拼接为字符串;
- 提供
@AssembleDB
注解,支持基于自定义 SQL 的数据源容器;
Fix
- 使用 @ContainerCache 添加缓存后,即使缓存全部命中依然会调用查询方法;
- 使用 Guava 缓存时,即使命中了缓存但是依然会查 DB,且 ID 都变成了NULL;
- 在依赖中排除 Ognl 后,SpringBoot 项目启动报错;
- 当通过
@AutoOperate#on
从返回值中提取待填充数据时,会偶发空指针异常;
Refactor
2.8.2 (2024-06-16)
2.8.2 (2024-06-16)
这是一个 Bug 修复版本,请尽快升级。
Fix
2.8.1 (2024-06-05)
这是一个 Bug 修复版本,请尽快升级。
Fix
2.8.0 (2024-05-07)
2.8.0 (2024-05-07)
这是一个新特性版本,修复了一些问题,优化了一些功能。
具体内容参见:Milestone。
Feature
- 提供一个操作门面,用于整合组件管理、容器注册、操作执行以及配置管理等功能;
- 当项目中同上存在复数同名的数据源容器时,应当直接报错或输出警告日志;
- @ContainerMethod 支持像 @AutoOperate 那样提取包装对象中的实际数据;
- 支持在非 Spring 环境下使用自动填充;
- 提供一个基于 SoftConcurrentMap 实现的缓存管理器;
- 代理工厂支持基于 ByteBuddy 代理非接口类型;
Fix
@ContainerEnumScan
注解无法支持带有通配符的路径;- 添加
@OperatorScan
注解后,项目启动时出现 'No servlet set' 问题; - 创建容器时可以指定 namespace 为空字符串,但是引用时却无法引用;
- 自动填充方法参数时,
AutoOperate.resolveOperationsFromCurrentElement
配置不生效;
Refactor
2.7.0 (2024-04-08)
2.7.0 (2024-04-08)
这是一个新特性版本,修复了一些问题,重构了一些底层组件,提高了字段映射的执行性能,并添加了键值解析器、字段映射的字面量配置的新特性。
具体内容参见:Milestone。
Feature
- 在 Spring 环境默认启用 AsyncBeanOperationExecutor 执行器;
- 简化属性映射配置,支持通过字面量的形式配置;
- 将从目标对象中提取 key 值的操作分离为独立的键值提取器;
- 数据源容器支持接受对象类型参数;
- 支持在被
@AutoOperate
注解的方法上添加操作配置;
Refactor
Fix
Doc
2.6.2 (2024-03-27)
v2.6.1
2.6.0 (2024-02-23)
2.6.0 (2024-02-23)
这是一个新特性版本,添加了对条件操作的支持,并支持了常量和键值两种数据源容器的选项式配置,此外,还增强了一些已有功能。
具体内容参见:Milestone。
Feature
- 支持
@AssembleConstant
注解,用于快速声明一个基于常量类的装配操作; - 支持使用实体类中特定方法返回值作为key值;
@ContainerCache
注解支持在 Spring 配置类的工厂方法中使用;- 声明装的配操作支持在实际执行时,根据情况动态决定是否应用;
@Assemble
注解支持通过类似 Spring 的@Condition
的方式动态决定是否要对特定对象应用操作;- 支持为每个操作都添加一个id作为唯一标识;
- 支持根据策略回填指定字段值;
- 支持直接在
@ContainerMethod
注解中指定缓存配置;
Refactor
Fix
2.5.0 (2024-02-01)
2.5.0 (2024-02-01)
这是一个功能迭代版本,修复了 crane4j 与 SpringBoot 集成的一些问题,完善了文档与代码注释,并优化了一些功能的使用方式。
具体内容参见:Milestone。
Feature
- 异步执行器支持指定支持指定批量大小,将基于同一数据源的操作分为多个小任务;
- 提供回调接口或组件,用于在具体的填充过程支持一些自定的操作;
- 当需要值到键的映射时,希望可以不需要在注解中指定 props 属性;
- 验证或者支持在更高的 LTS 版本运行;
Refactor
Fix