登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
代码拉取完成,页面将自动刷新
仓库状态说明
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
1
Star
17
Fork
2
Createsequence
/
crane
暂停
代码
Issues
1
Pull Requests
0
Wiki
统计
流水线
服务
JavaDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
开发画像分析
我知道了,不再自动展开
发行版
最新版
v0.6.1
8c06ea5
2022-08-16 18:28
对比
v0.6.1(填充切面返回值类型自动推导,自定义注册方法数据源)
Createsequence
## v0.6.1 - 2022/08/16 ### 新增功能 - 自动填充切面的 `@ProcessResult` 注解允许不指定返回值类型,切面将会自动推断类型; - 基础容器 `BaseKeyContainer` 与 `BaseNamespaceContainer` 添加基于泛型的默认key转换策略; - 方法数据源容器 `MethodSourceContainer` 支持直接注册方法作为数据源,而不必通过带有 `@MethodSourceBean` 注解的类进行注册; ### 问题修复 - 修复了一些文档与代码上的错误注释; ### 功能更新 - 容器注册时将会输出一些基本的日志;
最后提交信息为:
chore: 更新版本号为v0.6.1
预览版本
v0.6.0
0194df5
2022-06-30 10:43
对比
v0.6.0(方法返回值包装类处理支持)
Createsequence
## v0.6.0 - 2022/06/30 ### 新增功能 - 支持 `@ProcessResult` 注解通过 `wrappedIn` 属性,处理被包装类包装的方法返回值; - 被 `@MethodSourceBean` 注解的类将会被注册到 spring 容器中; - 方法数据容器 `MethodSourceContainer` 支持以无参方法作为数据源方法; ### 问题修复 - 修复了一些类上错误的注释; ### 功能更新 - 重构操作者模块,移除了 `OperateHandlerChain` 类,并以 `OperateProcessor` 替换;
最后提交信息为:
chore: 更新版本号为0.6.0;
v0.5.7
428cacb
2022-06-25 14:26
对比
v0.5.7(动态类型装卸)
Createsequence
## v0.5.7 - 2022/06/25 ### 新增功能 - `@Disassemble` 注解允许不指定类型,而是等到执行时才动态确定要装卸的字段的实际类型; ### 问题修复 - 修复当@ProcessResult没有指定任何表达式时,无法对返回值进行填充的问题; ### 功能更新 - 完善了文档,修复了一些错误的示例; - 调整了一些内部 API 与属性的命名;
最后提交信息为:
chore: 调整版本号为0.5.7;
0.5.6
89e1d68
2022-06-14 09:38
对比
v0.5.6(重复的扩展注解支持)
Createsequence
## v0.5.6 - 2022/06/14 ### 新增功能 - 为默认容器注解添加`assemblerName`属性以便根据 bean 名称查找实例; - 使用元注解合成的自定义注解允许在同一属性/类上存在多个; - `@MethodSourceBean` 注解也支持作为元注解使用; ### 问题修复 - 修复`Orderly`接口的实现类在部分情况下无法根据 `@Order` 注解排序的问题; ### 功能更新 - 将`OperateHandlerChain`接口中默认方法的实现调整至`AbstractOrderlyHandlerChain`抽象类; - 移除 `MethodSourceContainer.MethodSource` 中不必要的方法缓存;
最后提交信息为:
chore: 调整版本号为v0.5.6;
v0.5.5
722fee5
2022-06-08 10:36
对比
v0.5.5(自动类型转换,json对象SpEL预处理支持)
Createsequence
## v0.5.5 - 2022/06/08 ### 新增功能 - SpEL 表达式预处理支持处理 json 对象类型的数据,并提供与普通 `JavaBean` 一样根据点属性名读写的功能; - 添加操作拦截器`OperateInterceptor`,支持在处理器链执行前对数据源进行预处理; - `ObjectNodeOperateHandler#writeToTarget`方法支持处理非`JsonNode`类型的数据源; - `JacksonDisassembler`支持解析多重嵌套的 json 数组; - 新增空值操作处理器与空节点操作处理器 `NullOperateHandler` 和 `NullNodeOperateHandler`; - `BeanProperty` 与 `MethodSourceContainer` 支持对与方法参数类型不一致的入参进行自动转换 ; ### 问题修复 - 修复 json 对象指定的字段值为 `null` 时,无法正确填充或替换该字段值的问题; - 修复处理`ArrayNode`中元素时,会对同一个元素重复使用处理器链处理多次的问题; ### 功能更新 - 补充 `crane-jackson-implement` 模块下各组件的测试用例; - `AssembleProperty`更名为`PropertyMapping`; - 移除 `ExpressibleBeanReflexOperateHandlerChain` 及相关配置,将 SpEL 预处理功能调整为通过表达式预处理拦截器 `ExpressionPreprocessingInterceptor` 实现; - 简化各操作处理器中的逻辑判断;
最后提交信息为:
chore: 调整版本号为0.5.5;
v0.5.4
d4bce1f
2022-06-02 12:48
对比
v0.5.4(更多可选配置)
Createsequence
## v0.5.4 - 2022/06/02 ### 新增功能 - `@Disassemble` 注解允许自行指定嵌套解析时使用的解析器; - `ExpressibleBeanReflexOperateHandlerChain`允许替换默认使用的`contextFactory`; - 添加`MethodSourceContainer`,`EnumContainer`,`KeyValueContainer` 取消已注册数据源的功能; - 添加 `enable-asm-reflect` 配置,允许通过配置文件切换使用原生反射还是字节码调用读写对象; ### 问题修复 - 修复一些文档错误,为 0.5.3 及以后版本的 api 文档补充 `@since` 注解; - 修复`MapOperateHandler`在指定`ref`字段时反而将值填充至`key`字段的问题; - 修复配置文件无法正确映射到 `CraneAutoConfigurationProperties` 配置类的问题; - 修复使用`@EnumDict.Item`指定了枚举项名称后,注册枚举报错的问题; ### 功能更新 - 将旧的功能测试用例移至 example,原本路径提供更多粒度更细的测试用例; - 将`AssembleProperty#getResource`方法更名为`getSource`; - 移除对向`KeyValueContainer`注册数据源时,`key`类型必须为字符串的限制; - 将`BeanPropertyFactory`调整为接口,并默认注册到 spring 容器中。 移除`AsmReflexUtils`与`ReflexUtils`对其的引用,所有的`BeanProperty`都调整为通过`BeanPropertyFactory`获得; - 一些内部代码优化;
最后提交信息为:
chore: 调整版本号为0.5.4;
v0.5.3
bfc0857
2022-05-30 09:24
对比
v0.5.3(问题修复)
Createsequence
## v0.5.3 - 2022/05/30 ### 问题修复 - 修复当引入 `crane-jackson-implement` 模块时,Jackson 自动配置中的处理器链配置不会生效的问题; ### 功能更新 - 将`ExpressibleOperateHandlerChain`调整为`BeanReflexOperateHandlerChain`子类; - `jacksonAssembler` 不再支持 SpEL 表达式预处理功能; - 将`OrderlyOperateHandlerChain`重命名为`BeanReflexOperateHandlerChain`,原Jackson自动配置中的处理器链配置修改为新实现`JacksonOperateHandlerChain`;
最后提交信息为:
chore: 调整版本号为v0.5.3;
v0.5.2
0e347bc
2022-05-27 10:16
对比
v0.5.2(问题修复)
Createsequence
## v0.5.2- 2022/05/27 ### 新增功能 - 添加JsonGroup分组; - 添加类预解析与枚举类预注册的配置(测试); ### 问题修复 - 修复在向`EnumDict`注册枚举时无法正确解析`@EnumDict.Item`注解配置的问题; - 修复配置类中CombineOperationConfigurationParser声明方法名称错误的问题; ### 功能更新 - 提高`OperationConfigurationCache`,`UnorderedOperationExecutor`,`EnumDict`,`CombineOperationConfigurationParser` 在容器中的优先级; - 在文档中补充`@EnumDict.Item`注解与元注解的使用说明;
最后提交信息为:
chore: 调整版本号为v0.5.2;
预览版本
v0.5.1-alpha1
bdcdf38
2022-05-25 09:52
对比
v0.5.1-alpha1(优化ObjectMapper注册机制)
Createsequence
## v0.5.1-alpha1 - 2022/05/25 ### 功能更新 - 调整默认内部 ObjectMapper 的注册调整为仅当不存在名为 `CraneInnerObjectMapper` 的 ObjectMapper 实例时才进行注册; - 移除默认注册的 `DefaultCraneJacksonSerializeObjectMapper` 实例; - 完善 Json 模块使用文档;
最后提交信息为:
chore: 调整版本号为0.5.1-alpha1;
预览版本
0.5.0-alpha1
b215fe1
2022-05-24 13:05
对比
v0.5.0-alpha1(操作分组,类配置,预置注解)
Createsequence
## v0.5.0-alpha1 - 2022/05/24 ### 新增功能 - 允许分组填充; - 添加 key 字段内省容器 `AssembleKeyIntrospect`; - 添加容器对应的预置注解:`@AssembleBeanIntrospect`, `@AssembleEnum`,`@AssembleKeyIntrospect`,`@AssembleKV`,`@AssembleMethodSource`; - `@Assemble`注解添加 `group` 属性,允许为操作分组并在执行时仅处理指定分组的操作; - 添加 `@Operations` 注解,操作配置可以通过该注解以类为单位进行配置,并允许通过继承与实现传递配置; - 添加组合解析器 `CombineOperationConfigurationParser`,允许将一组解析器适配为单个解析器同时使用; - 全部相关注解都支持根据 beanName 在容器中寻找对应解析器与执行器的功能; ### 功能更新 - 移除`OperatorFactory`接口与其实现类,将 Assembler 与 Disassembler 相关配置移至装配与装卸操作配置上; - 内省容器 `IntrospectContainer` 更名为 `BeanIntrospectContainer`; - `SourceMethod` 添加 key 字段值自动适配方法入参的功能; - 将`BeanOperateConfigurationParser`更名为`FieldAnnotationConfigurationParser`,并将部分逻辑提取至抽象注解配置解析器 `AbstractAnnotationConfigurationParser` 中; - 移除`OperationConfigurationParser`接口的配置类泛型约束; - 分离 crane 的自动配置类,不同模块的配置将分散到对应的独立配置类中; ### 问题修复 - 修复当一个prop获取的数据源为空时,该字段对应的整组操作会被全部跳过的问题; - 修复父类字段上的注解无法被解析器正常解析的问题;
最后提交信息为:
docs: 添加更新 0.5.0 日志;
预览版本
v0.1.0
1bfb30b
2022-05-19 13:40
对比
v0.1.0-alpha1
Createsequence
## v0.1.0 - 2022/03/24 ### 新增功能 - 添加容器模板基类 `BaseContainer`; - 方法返回值拦截切面允许根据SpEL的校验条件选择是否启用; ### 问题修复 - 修复解析嵌套字段时,嵌套字段的类型解析配置中无法正常获取装配操作的配置;
最后提交信息为:
feat: 方法返回值拦截切面允许根据SpEL的校验条件选择是否启用;
预览版本
v0.2.0-alpha1
407f663
2022-05-19 13:14
对比
v0.2.0-alpha1(重构为多模块项目)
Createsequence
## v0.2.0-alpah1 - 2022/04/23 ### 性能优化 - `FuncUtils` 中的 Lambda 缓存使用 `WeakReference` 包装以避免长时间占用过多内存; ### 功能更新 - 重构为多模块项目; - `BaseContainer` 改名为 `BaseKeyContainer`,默认提供的枚举容器与键值对容器改为基于该容器实现; - 移除 `@Sort` 注解,使用 Spring 自带的`@Order`注解替换其功能; - 添加排序接口 `Orderly`,所有旧的待排序功能的类皆实现该接口; - 为类中允许重写的方法添加 NullSafety 注解; - `EnumDict$EnumDictItem`内部类改为直接继承`HashMap`,不再通过`BeanMap`缓存枚举字段值; - 添加测试用例; - 修复文档错误; ### 新增功能 - 添加方法容器 `MethodSourceContainer` 与内省容器 `IntrospectContainer`; - 添加新的模板基类:`BaseNamespaceContainer`,允许同时根据 namespace 与 key 处理对象; - 添加异步执行器 `AsyncUnorderedOperation`,用于异步完成填充操作; - 添加 `ProcessTemplate` 用于提供数据的快速处理; - 添加操作配置构建器 `OperateConfigurationAssistant`,为类操作配置的自由定制提供支持; - `BeanReflexDisassembler` 允许装卸任意深度的集合; - 添加处理器链 `OperateHandlerChain`,所有的装配器与装卸器皆改为通过处理器链对不同类型的数据结构进行操作; - `@Assemble` 注解添加通过名称从 Spring 容器中寻找 bean 的功能; - 添加对父类属性的处理支持; - 添加缓存解析包装类 `CacheableParserWrapper`,用于将普通解析器包装为带缓存功能的解析器; ### 问题修复 - 修复当对象为 null 时,`PropertyCache` 通过反射设置或获取对象属性失败的问题; - 修复无法从缓存中获取 `PropertyCache` 字段的问题; - 修复无法通过反射获取 is 开头的 get 方法的问题; - 修复`ArrayNode`操作处理器错误拦截`ObjectNode`的问题; - 修复`ValueNode`操作处理器获取数据源数据错误的问题; - 修复`@ProcessJacksonNode`注解被以后被移除的问题; - 修复 `DynamicJsonNodeBeanSerializer` 无法正确拦截被注解的类型的问题; - 修复方法返回值拦截切面的 SpEL 表达式中无法引用上下文参数的问题; - 修复`OperateConfigurationAssistant`类字段映射配置中 resource 字段与 reference 字段颠倒的问题; - 修复`ReflexUtils`获取 getter 方法错误拼接重复前缀的问题; - 修复`EnumDictContainer`与`KeyValueContainer`无法正确将key值转为字符串的问题; - 修复`OrderlyAssembleHandlerChain#handlers()` 方法循环调用导致栈溢出的问题; - 修复执行器入参与装卸器无法将数组类型的数据适配为集合的问题;
最后提交信息为:
chore: 版本号调整为0.2.0-alpha1;
预览版本
v0.4.0-alpha1
f821344
2022-05-13 16:50
对比
v0.4.0-alpha1(反射性能优化)
Createsequence
## v0.4.0-alpha1 - 2022/05/13 ### 性能优化 - 引入`reflectasm`依赖,全面优化反射性能; ### 功能更新 - `BeanProperty` 调整为接口,并提供基于`reflectasm`和原生反射的实现; - 取消 `BaseKeyContainer#getSources` 对数据源对象的泛型约束; - 使用 guava 集合实现统一替换自定义集合与 Spring 提供的集合实现; - `OperateTemplate` 添加一些重载方法; ### 问题修复 - 修复有序处理器链调用时会抛出并发修改异常的问题; - 修复有序执行器排序在部分情况下排序不生效的问题;
最后提交信息为:
chore: 版本升级为0.4.0-alpha1;
预览版本
v0.3.1-alpha1
2923115
2022-05-13 16:44
对比
v0.3.1-alpha1
Createsequence
## v0.3.1-alpah1 - 2022/05/06 ### 功能更新 - 完善文档,并将原本 README 中的详细内容迁移至 wiki; - 修复测试用例的一些问题; - `PropertyCache` 重命名为 `BeanProperty`; - 将 `crane-annotation` 与 `crane-extension` 模块合并至 `crane-core` 模块; - 为所有注解涉及容器、执行器与操作者工厂等属性参数添加对应接口的泛型约束; - `MethodSourceContainer` 容器所使用的 `MethodSource` 调整为其内部类; - 执行器入参添加 `OperationConfiguration`; - 移除`BeanReflexAssembler`中不必要的类型校验; - 移除 `DynamicJsonNodeModule` 与 `DynamicJsonNodeBeanSerializerModifier` 中不必要的成员变量; - 移除 `BeanOperateConfigurationParser` 多余的类型强制转换; ### 新增功能 - 添加全局配置类的新实现 `DefaultCraneAutoConfiguration`,该实现类将在配置文件中自动注入,用于后续全局配置相关功能的开发; ### 问题修复 - 修复容器会将对同一个对象的填充操作重复多遍的问题;
最后提交信息为:
chore: 调整依赖;
下载
请输入验证码,防止盗链导致资源被占用
取消
下载
Java
1
https://gitee.com/CreateSequence/crane.git
git@gitee.com:CreateSequence/crane.git
CreateSequence
crane
crane
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册