Releases: houkunlin-starter/system-dict-starter
Releases · houkunlin-starter/system-dict-starter
Release v1.4.9
build: 发布 1.4.9 版本
Release v1.4.8
已在 JDK8
JDK11
JDK17
环境下跑通所有单元测试样例
- fix: 修复 JDK17 下运行失败问题
- feat: 重构使用字节码生成 Converter 转换器,增加 ASM 字节码支持
- feat: 增加配置支持切换字节码工具:ASM/JAVASSIST
Full Changelog: v1.4.7...v1.4.8
Release v1.4.7
- feat: 增加 DictText#dictTypeHandler 字典类型代码处理器支持,可以动态设置字段的字典类型代码
- feat: 支持自定义缓存键前缀
Full Changelog: v1.4.6.3...v1.4.7
Release v1.4.6.3
- feat: 增加树结构数据访问深度限制,防止陷入死循环
- feat: DictType 注解可重复使用,支持把一个枚举做成多个字典,同时支持把多个枚举字典合并到一个字典中
- fix: 修复字段值为 null 时被序列化成 "null" 字符串的问题
Full Changelog: v1.4.6.2...v1.4.6.3
Release v1.4.6.2
- fix: 修复某些场景下获取不到 RedisTemplate<String, DictTypeVo> 导致启动失败问题
- 在一些多模块项目中,公共模块配置了 RedisTemplate<String, Object> Bean 先注入到上下文中,系统字典的
RedisTemplate<String, DictTypeVo> 无法继续注入,因此导致启动失败
- 在一些多模块项目中,公共模块配置了 RedisTemplate<String, Object> Bean 先注入到上下文中,系统字典的
Full Changelog: v1.4.6.1...v1.4.6.2
Release v1.4.6.1
- fix: 修复字典值使用文本分隔转换数组结果时,字典值无分隔符导致无数据问题
Full Changelog: v1.4.6...v1.4.6.1
Release v1.4.6
- feat: 增加树形结构数据的字典文本转换支持
- feat(store): 刷新字典时当 DictTypeVo#children = null 时视为删除字典类型对象
- feat(store): 删除字典类型对象的同时也删除此字典类型下的所有字典值文本信息
- feat: RefreshDictValueEvent 增加参数设置删除单个字典值文本后字典类型无字典值列表时删除此字典类型信息
Full Changelog: v1.4.5...v1.4.6
Release v1.4.5
功能代码变更
- feat: 增加一个 DictText#replace 配置字段,标记是否用字典文本值替换字典值(在原字段上输出字典文本值)#I4GT0N
- feat: 增加一个 RefreshDictTypeEvent 事件刷新一个完整的字典类型信息 #2
- fix: 修复刷新单个字典值文本信息时文本信息未同步到字典类型对象里面的问题 #2
- feat: RefreshDictValueEvent 事件增加 updateDictType 字段决定在更新单个字典文本值时是否维护对应字典类型对象的字典值列表信息
涵盖 1.4.4.X 变更
- feat: 在刷新字典时当 DictValueVo.title == null 被视为删除相应的字典文本信息
- fix: 修复 SpringBoot 2.4.0 以下版本无法启动问题
配置文件变更:
- 增加一个
system.dict.replace-value
配置项(在原字典值字段上把字典值替换成字典文本输出)
由于引入了 DictText#replace 配置,会影响使用 DictText#mapValue=YES 和 system.dict.map-value=true 的配置,有使用上诉配置的请增加如下配置:
- 使用注解 DictText#mapValue=YES 配置的请增加 DictText#replace=YES 配置
- 使用全局 system.dict.map-value=true 配置的请增加 system.dict.replace-value=true 配置
Full Changelog: v1.4.4...v1.4.5
Release v1.4.4.1
- fix: 修复 SpringBoot 2.4.0 以下版本无法启动问题
- refactor: 在刷新字典时当 DictValueVo.title == null 被视为删除相应的字典文本信息
Release v1.4.4
功能代码变更
- feat: 增加一个
RefreshDictValueEvent
事件可以刷新单个字典文本信息 - feat: 增加一个刷新字典的端点:
dictRefresh
- feat: 增加使用 Redis 的发布/订阅 功能来处理字典刷新事件通知配置(需要设定配置文件来启用)
- refactor: 修改系统字典端点ID
dictSystem
解决系统字典端点控制台日志警告问题 - refactor: MQ通知其他协同系统刷新字典默认未启用
配置文件变更:
- 移除
system.dict.mq-header-source-key
配置项 - 增加
system.dict.mq-type
配置项选择性启用 RefreshDictEvent 通知其他系统刷新字典- 可选值:
none
不启用(默认),amqp
使用 RabbitMQ,redis
使用 Redis 的发布/订阅功能
- 可选值:
- 更改
system.dict.refresh-dict-interval
属性类型为Duration
类型,默认值未改变
涵盖 1.4.3.X 变更
- fix: 修复因 Redis 客户端不同导致项目启动报错问题
- fix: 修复 Java 8 环境下 SpringBoot 打包后使用 java -jar 启动异常问题
Full Changelog: v1.4.3...v1.4.4