2024.2.0 (2024-08-03)
- 策略执行器中先判断类型,再判断 supports 方法 (df8bb93)
- 解决 mybatis plus 插件和 pageHelper 插件顺序问题 (eaf1479)
- 解决 RabbitMQ 多数据源声明同名交换机判断 delay 时 toMap 冲突 (c09315c)
- 解决同名队列和交换机声明多个绑定时 bean 冲突 (d0002da)
- SysRoleMapper Oracle 下 mapper 字段缺少 (2017e66)
- 登录和注销时操作客户端 cookie (1fc3432)
优化顶级异常,支持异常信息字符串模板 (5d7fef2)
- 支持配置单个账号最大 token 数量(默认 1 即不支持重复登录) (a7c3dba)
2024.1.0 (2024-05-27)
- 对 DATA 类角色去除前缀 (ae183d8)
- 特殊处理 login url,防止未清理的无效 token 拦截登录 (d331e03)
- 在没有使用注解时,跳过 DataPermissionInterceptor (9fbd235)
- DATA 类角色字符串截取错误 (6065472)
- roles 副本解决 retainAll 影响 (2c3c3ca)
- SysMenuMapper oracle DISTINCT 错误 (2f82bbd)
实现基于角色的数据范围解析器 (db99697)
- 添加 DataPermissionInterceptor (8b88816)
- 添加 ShardingJdbc 强制路由主库的工具类 (15a81e6)
- 项目更名为 uni-boot-cloud (de9fd0f)
- DataScopeResoler 按 RoleTypeEnum 处理前缀 (1b4d66e)
- framework 模块添加 oracle 数据库支持 (0e11013)
- logback 增加 warn 级别 log 文件 (c5d1af2)
- TxMsgKit 添加没有事务的消息发送方法 (9bf2af3)
- x-file-storage 更新到 2.1.0 (70eda50)
- 移除 shardingjdbc 相关依赖及设施 (049c203)
2023.1.4 (2023-12-01)
- 菜单不提供 parentId update (a8d09a6)
- 修改 multi-rabbit 依赖引入顺序,解决加载 bean 问题 (6e94d62)
- 移除 BPP,使用 @Primary 指定 FileRecorder (7c1f560)
- 查询部门 tree 支持过滤部门名 (87dd2b1)
- 查询通用 tree util (2f7585b)
- 使用工具类优化 tree 生成代码 (5a2b836)
- 添加 sharding jdbc 测试接口,以 plg_log 为例 (3f2eeef)
- 添加部门管理 API (d290385)
- 添加基于 hutool、commons-pool2 的 ftp 工具 (7e241e9)
- 统一配置 logback mybatis plus log 为 debug (5ec5214)
- 修改 menu 列表为树状全部返回 (8e499d0)
用户管理加入部门相关字段 (131cb72)
- sharding jdbc 数据源集成到 dynamic-datasource (eba893b)
2023.1.3 (2023-11-12)
- 查询 SysUser feign client 参数丢失 (794c55c)
- 改为 @RequestParam 接收普通参数 (4d278bb)
- 解决自定义 AbstractStorageHandler 不能替代框架默认 FileRecorder (03dc96d)
- 判断交换机 delay 方法空指针 (dca79e4)
属性名称错误,影响继承 (fec45c1)
- gateway 去除 tomcat 依赖 (9a514ca)
- logback appender 重复添加 (b511487)
- multirabbit publisher-returns 无效,使用 setMandatory 开启 callback (f4c650d)
- token 校验 filter 最好放到 LogoutFilter 之前 (fbfedc0)
- TxMsg doClear 方法取消参数,方便 xxl-job 执行 (f8ebd2e)
- 策略执行器 execute 方法改为 submit 表示有返回值 (2be2f0c)
- 对 TxMsg retry 和 auto clear 实现提供 xxl-job 支持 (d0ea857)
- 发送事务消息示例接口修改为可指定 connectionName (e3456f3)
- 缓存注解打到 controller 层 (95de520)
- 集成 RabbitMQ 多数据源 (67bf54a)
- 集成 x-file-storage 文件记录入库、通用上次下载接口等 (6149584)
- 删除文件接口启用 ApiLogger (ab79b07)
- 添加 example job (bdd4288)
- 添加 x-file-storage 使用 demo controller (f15a0e6)
- 添加菜单 hiddenFlag 字段,用于管理内部路由 (58384fe)
添加分页查询所有菜单的接口(不含角色) (c1c35b3)
添加文件删除接口 (7e77e3a)
- 添加字段菜单 cache_flag (19c8d73)
通用上传文件接口返回值改为保存的文件名 (13f5144)
字典查询接口添加缓存 (8e99701)
- feign 集成 apache httpclient (ed85cc0)
- feign 默认 log 基本指定 BASIC (4d84efc)
- RabbitExampleConsumer @RabbitListener 指定 containerFactory (ae3f45a)
- security 忽略路径分为 permitAll 和 ignoringMatcher 两类 (d154113)
- SecurityUtil 获取 token 兼容 url 参数方式 (7dceebf)
- TxMsg 重试添加配置开关 (c289588)
- TxMsg 重试支持指定 connectionName (b21d09c)
2023.1.2 (2023-08-24)
- 入参 msgOption 错误 (65186d8)
- 添加 mq 相关测试接口和消费者 (63a614b)
- 字典 vo 缺少 defaultFlag 字段 (9a2bf95)
- 字段 currRetryTimes 已改为 leftRetryTimes (2055133)
- correlationData 空指针异常 (a26a474)
- SysLog 查询接口返回 traceId (c11e506)
- 创建 PlgMqMsg 表实体 (7bdf0a8)
当前重试次数改为剩余重试次数 (8816d23)
- 对 Api log 记录的敏感字段做忽略控制 (403e963)
- 设置 correlationData 后置处理 (66f2eb6)
- 事务消息重试添加改为非 OVER 状态 (82f38ed)
- 添加 mq 消息查询更新接口 (3e5fb66)
- 添加 rabbit 常量 (c0f749f)
- 添加 RabbitMQ 发消息工具方法 (5d3a472)
- 添加 RabbitMQ 发消息工具类 (45fce60)
- 添加 RabbitMQ 死信交换机的配置项 (f46a163)
- 添加 RabbitMQ 消息确认和退回回调 (c6c8769)
- 添加 RabbitMQ 自动配置,根据配置文件自动创建队列等 (61e1a66)
- 添加测试 api log 的接口 (f3532ad)
- 添加发送 TxMsg 前校验参数的方法 (8ef8baa)
添加发送事务消息测试接口 (df070e6) * 添加事务消息处理器实现 (94ba2f3) * 添加事务消息相关 (440e860)
- 添加通用 RabbitMq 消息转换器 (4d22b80)
- 添加消息是否 Returned 的判断 (8972aee)
- 修改消息确认 log (5bc9443)
- Api log 记录注解 logType 改为 String (9c26e8b)
- Api log 添加 traceId 字段记录 (9c5f667)
- BaseLogInfo 改为接口 (1625994)
- example 添加测试 mq 发送 text json 类型消息的接口 (007c569)
- po to vo 方法名规范化 (675d157)
- RabbitMQ 消息回调添加处理钩子 (cfe64b6)
- swagger 查询接口放到公共模块 (e0c6349)
2023.1.1 (2023-08-11)
- 处理返回 null 的接口,根据 ErrorCode 的 code 值进行比较 (27da719)
- 删除 spring-boot-devtools,解决类加载问题 (f381e4e)
- 找回 framework mapper xml (a67f4dd)
- feign 拦截器非请求接口内的调用获取请求对象时空指针 (d3cb87d)
- FeignClient 装饰器填充请求无效,使用 feign 拦截器 (4e14fe0)
- rpc 调用 login 获取请求头中 token (805997f)
- 抽离 security 认证相关配置到 framework 服务 (9e77d1c)
- 抽取服务通用配置功能到 base 模块 (7faf8f0)
- 定义 feign client 装饰器,实现请求与响应的拦截处理 (c072dab)
封装判断是否内部调用的方法 (e9b01d3) * 公开系统日志写入接口 (1eed2d3)
- 后缀 dto 改为 vo (dd448a8)
- 内部调用结果不需要包装,和 @ApiFormat 无关 (497827c)
- 配置 trace id 过滤器,配置 feign 传递 trace id (ce5004d)
- 升级 knife4j 到 3.0.3,统一集成到 gateway swagger (b44a321)
实体类名称规范化 (d2e5849) * 使用二级缓存作为默认缓存管理器 (e237d80)
- 添加 ApiInner 注解及切面,对内部调用进行管控 (05a5bbb)
- 添加 const SvcName 维护服务名 (adfebc0)
- 添加 feign 拦截器,传递 token、用户信息 (f330278)
- 添加 feign 异常 Decoder (bbb4337)
- 添加 RPC 异常相关 code (2e49ea7)
添加几个测试接口 (0a45528) * 添加几个测试接口的调用接口 (d9b192a) * 添加网关全局异常处理器 (f26f50b) * 网关添加请求头过滤器 (dc2dc28)
- 引入 gateway 组件,调整依赖关系 (e8ad59b)
- 引入 mica-auto 自动维护 spring.factories (699a422)
- 引入 nacos、openFeign (ac27c24)
- feign 拦截器传递内部请求标识头 (6b24555)
- gateway 添加 filter 生成 traceId (26095b1)
- log feign 接口传参改为 dto (d5ce99e)
- token filter 中先根据请求头判断是否是内部请求 (70e1c5b)
2023.1.0 (2023-07-24)
查询角色菜单时根据enableFlag过滤 (b18f831)
- 父 pom version 不能引用 properties 中的参数 (4be302b)
- 更新 refresh token 时只更新时间 (c02bfb5)
- 工具类注入逻辑优化、log 优化 (1cd3686)
关闭空对象序列化失败 (4df828f) * 关闭默认的数据源自动配置 (166898d)
过期时间使用long避免溢出 (844c18b)
- 解决 null 值在 caffeine 和 redis 中存储混乱 (3acfced)
- 解决 refreshMsg 发出节点也要处理消息 (7ac182b)
- 解决接口返回 null 时类型转换异常 (29c5315)
- 解决使用方法引用替代 lambda 产生空指针 (a0e93e2)
- 解决MP lambdaUpdate自动填充失效的问题 (d2183f9)
- 解决resultMap collection分页异常 (e511f7f)
- 取消 mybatis handler 自动扫描,显式指定 (58a7aaf)
- 删除无用包引用 (f1c48fa)
- 修改 logback 有误的配置 (f8382d2)
- 修改 mapper 扫描路径,避免 mybatis 代理无辜接口 (d7a122d)
- 修改 system 模块未注册 (5132858)
修改查询条件顺序 (b240728)
- 修改为惰性 new 异常 (7beb7b1)
- 修改SQL排序 (a76f601)
- 优化 Json 工具类方法名称 (783ae6a)
- bean 重命名,防止冲突 (f202ac3)
- DbConfigObject 添加 config 属性 (66b4dfb)
- error code 统一修改为 4 位数字 (53013d8)
knife4j升级注解变动 (b1f7414)
- mica-auto 依赖 provided,防止传递 (f1d0cc4)
page参数使用整形 (ae51f15)
- RedisUtil 方法名称不规范 (8b02967)
resultMap映射错误 (c7d955a)
查询API角色关系方法优化 (a3f137f)
- 初始化 SpringBoot 项目 (5b29e37)
- 打开p6spy (e61878a)
- 当 api 配置没有关联角色,通过鉴权 (af38758)
- 登录注销接口添加 ApiLogger 注解 (33b5576)
- 定制 MissingServletRequestParameterException 的异常处理 (728d983)
- 定制 taskScheduler 和 DtpExecutor 的停机关闭策略 (243536e)
复用Security接口,方便swagger展示 (1f6560c)
- 根据 spring 路径优先级比较来确定生效的 api 角色配置 (24cc062)
- 更新和添加 componentPath 可为空 (1c865a5)
- 更新时不可修改 leafFlag (c680261)
- 基于 springboot cache 组件修改 api 和 role 的缓存策略 (01bba6f)
- 集成 dynamicTp (73ec03b)
- 集成 jasypt 管理配置文件中的密码 (c2d3f61)
- 集成 pagehelper (5ba9533)
- 集成 TTL (b5fb0e8)
- 接口统一返回格式添加 path 信息 (df06d82)
- 开启 Spring 异步和定时任务 (37e0aa9)
没有认证信息的请求投票弃权 (d0c646d)
- 配置 AOP exposeProxy 为 true (13aaa9c)
- 配置 mybatis typeHandlerPackage 并加入 alias 扫描 (187a74f)
- 配置 RedisTemplate<String, Object> 的 bean (d7730df)
- 配置 swagger version (49a8fe4)
- 配置 web 容器优雅关闭 (f8e912e)
配置定时线程池线程数、关闭前等待时间 (1b3b646)
删除父级菜单时删除下面子菜单 (a9025a7)
- 删除异步入库,在 handler 实现类中异步 (9e2fa8e)
删除用户时清理角色绑定关系 (3096f9f) * 设置druid监控页面默认密码 (77accc7)
- 升级 Swagger UI 插件为 knife4j,版本 2.0.5 (eea0ece)
- 实体类启用 autoResultMap (ece9826)
- 实体类使用 lombok @Builder,添加 typeHandler 注解 (512cd23)
- 使用 alias 指定 typeHandler (21630b9)
- 使用 Cacheable 优化 API 角色关系缓存 (6e0f9e4)
- 使用 DefaultErrorAttributes 代替 ErrorController 对 SpringMVC 原生异常进行处理 (cf39eaa)
- 使用 RedisTemplate 统一序列化代替 JacksonUtil (c3208b9)
- 使用 Spring 项目 jackson 配置创建 RedisTemplate 序列化 (b4e9274)
- 使用bind优化like concat (b249c28)
使用JacksonTypeHandler实现roles合并 (ac3c629)
- 提取 TTL、DynamicTp 到 plugin concorrent (484188d)
- 添加 AOP 依赖,配置 mybatis (f7a7774)
- 添加 API 管理接口 (5ff80f6)
- 添加 Api log 入库及查询接口 (1d92b24)
- 添加 CollectUtil 集合工具类 (472fbf9)
- 添加 common 错误枚举 (8580a8d)
- 添加 DemoMapper 测试动态数据源切换 (6157483)
- 添加 ErrorEnum 未知错误 (a70e244)
- 添加 JWT 过滤器 refresh token 解析 (0c4379a)
- 添加 jwt 和 redis 两种 token 校验模式 (5635e41)
- 添加 jwt token 工具类及其配置 (5d8a79c)
- 添加 keys 方法 (c8192ba)
- 添加 MAPPING 静态字段,用于 mybatis plus typeHandler (afb6bfe)
- 添加 Mybatis 拦截器,打印 sql (83fc7e9)
- 添加 MyBatis 枚举处理器 (86cb9e2)
- 添加 Redis 过期 key 统一监听器和处理器接口 (e1b26f6)
- 添加 Redis 配置类 (9b618a9)
- 添加 Redis 消息监听器抽象,统一注册监听 (d465ac2)
- 添加 RedisCacheManager 配置,修改 KeyPrefix (2eabbe2)
- 添加 RedisUtil,修改本地缓存配置 (e29d078)
- 添加 refresh token 错误的响应码 (4e2f94c)
- 添加 SimpleException 构造函数,传入自定义异常信息 (6c33dde)
- 添加 SimpleRes.ResError 构造函数,传入 ErrorEnum (999a933)
- 添加 Spring 工具类,SpringUtil (2fc99ee)
- 添加 SwaggerConfig,动态配置 docket (da7aa62)
- 添加 Token 请求头的校验过滤器 (e2b63a4)
- 添加 tokenTime 字段的映射 (9d75688)
- 添加 TokenUtil,抽离 SecurityUtil (1205737)
- 添加 Web 工具类和写入响应 JSON 方法 (7c453f7)
- 添加策略模式统一 service,基于 spring plugin (94a552d)
添加查询角色列表接口 (88d19f0)
添加查询全部接口去重 (15183e3) * 添加查询用户(带角色)方法 (5367524)
- 添加从数据库获取 API 权限配置 (3cf0f1b)
添加从SecurityContext获取认证信息方法 (8f6308e) * 添加错误码枚举类和状态码枚举类 (b681b9a)
添加登录逻辑和登录成功或失败的回调 (322c803) * 添加动态数据源类 (463f251)
添加多环境的打包配置 (8c4e6ed) * 添加二级缓存及其管理器 (a792518) * 添加分页参数类用于bean继承 (c8e0cec) * 添加分页查询返回格式实体类 (e48cbf7) * 添加分页查询用户(带角色)的接口 (5243263) * 添加根据菜单、api查询角色的方法 (b86e5b9)
- 添加根据异常类获取 SimpleRes 对象的方法 (424eb9e)
添加根据id查询用户接口 (bfa410b)
添加忽略统一返回格式的注解判断逻辑 (494e9a5)
添加角色绑定关系增删方法 (a3c92e6) * 添加角色绑定关系增删接口 (241f19c)
- 添加接口返回 null 时的返回格式处理,抛出异常 (6ed36f4)
添加接口接收枚举类的通用转换器 (7680674) * 添加接口请求参数异常的统一处理逻辑 (deaad01)
- 添加客户端请求错误错误码枚举、删除 ReasonEnum (f580ae6)
添加判断过期的工具方法 (1d50e20)
- 添加配置,启动时将 dataSource.yml 加入 Environment (209975f)
添加请求响应打印日志的切面和注解 (62264d3)
- 添加全局的异常处理类,实现 ErrorContoller 对 404 异常定制返回内容 (dabe3e4)
添加权限不足、未登录、注销的处理逻辑 (98c6c85) * 添加事务工具类,添加事务完成后执行回调的方法 (ca69315) * 添加数据源配置类,解析并配置动态数据源 (6f7712e) * 添加通用上传下载API (5cfc30b)
添加响应码接口及枚举类,优化异常处理 (f5a1cef) * 添加响应体封装工具类、响应状态码枚举类 (eebbe43) * 添加修改用户信息和密码接口 (3b01cf0)
- 添加一个 获取请求 IP 地址的工具方法 (c21c7be)
- 添加一个 Jackson 工具类 (bb21f75)
- 添加一个 security cache manager,过期时间设置为 jwt 配置 (fdb6fb3)
添加一个断言工具类 (43108b6)
- 添加一个注解,用于控制接口是否按 SimpleRes 格式返回 (a64aa5b)
添加一个状态码常量类 (fb44293)
- 添加一些 Reason Code 到枚举类 (ee2efd4)
添加用户更新enable接口 (46abb1f)
添加用于切换数据源的注解 (7d27d23) * 添加责任链模式接口模板,策略执行器支持多个匹配实现 (392b97f) * 添加字典管理接口 (fa18a2b)
- 添加自定义的 accessDecisionManager (f82aa5a)
- 添加自定义异常类 SimpleException (c255af3)
- 添加自述文件 README.md (d22509f)
添加component_path属性、SQL按orderNum排序 (0d2ce36) * 添加create_time相关属性返回 (fc38c28) * 添加menu管理接口 (55d81bf)
- 添加mybatis plus自动填充注解 (acc1626)
添加MybatisPlus自动填充createTime相关 (d5a5b97) * 添加Role关系表删除方法 (6724c79) * 添加Security默认放通actuator,druid等 (5433e1d)
- 添加spring security获取username工具方法 (7eec2e0)
添加SysMenu实体及表 (a07f57a)
- 添加user getInfo菜单接口 (9097fc8)
- 完善 plugin actuator (294689f)
- 完善 plugin cache (3774464)
- 完善 plugin datasource,动态数据源使用 baomidou (9e81670)
- 完善 plugin log (a3262a2)
- 完善 plugin mybatis (bb8d5ba)
- 完善 plugin swagger (b1d813c)
系统用户添加性别、登录信息等字段 (462f946)
- 限流切面功能移入 concurrent 模块,添加限流异常 (5ef1668)
校验异常时修改状态码 (af32198)
- 修改 400 的 Reason Code (8bb547b)
- 修改 caffeine 配置和 RedisTemplate bean (1f8b6f9)
- 修改 SimpleRes,返回内容添加 path 和 error 信息 (b192315)
- 修改 ThreadPoolConfig 配置方式 (6aaaf63)
- 修改覆盖 DtpLifeCycle bean 的方式 (0d33fab)
- 修改排序条件 (454a671)
- 修改日志类名显示字符数为 50 (cb5915d)
修改为按时间降序 (d2fd1df) * 修改用户更新、添加、删除接口 (5df9027)
- 修改swagger tags (2944b3f)
- 引入 cache 组件、基于 caffeine 实现 (d7a9d85)
- 引入 druid、dynamic-datasoure (6d0f19a)
- 引入 Mybatis Plus,添加相关配置类 (0910b99)
- 引入 p6spy 监控 sql,弃用拦截器打印 sql (4517a74)
- 引入 redis 依赖,配置连接信息 (89d5979)
- 引入 Spring Retry,添加测试代码 SpringRetryController (2b04bb0)
- 引入 Spring Security,添加相关实体类 (53931df)
- 引入 spring-boot-admin (27d59fb)
- 引入 validation,配置统一异常处理 (48e620d)
- 优化 DynamicDataSourceAspect,拦截类和方法上的注解 (f1f40fc)
- 优化 Mybatis 枚举处理器,默认使用 ordinal 处理 (28f2bb2)
- 优化 Redis 工具类,添加 setnx 相关方法 (0eb546f)
- 优化 RetryTemplate 配置 (3bf02cf)
- 优化全局异常处理、ApiErrorCode 添加 http status 支持 (1b050b4)
- 优化注释、注解 (6ddce5e)
针对各模块添加异常类 (defff12)
支持cookie中的token解析 (89f42d9) * 注销接口改为401返回 (0db29f0)
- 注销删除redis token前判断是否是redis认证模式 (223c916)
- 自定义 mybatis handler 包调整 (ab409bd)
- api role 关系存到 redis (06d54ec)
- ApiLogger 入库使用异步 (947df05)
- AssertUtil 增加工具方法 (02718cd)
- DemoController 添加测试接口 (8a1cb6f)
Jackson序列化Long型为String (6f52997)
knife4j升级到2.0.9 (e9d4d2a) * log列表支持时间范围过滤 (a8942e6) * log英文化,防止控制台乱码 (48ca641) * order字段改为orderNum (f2125b5)
- pagehelper 开启 pageSize 为 0 查全部 (506d15a)
- Redis 过期处理器查找添加 MAP 缓存 (8c4370f)
- Redis Lock 修改为基于 RedisTemplate<String, Object> (9b8dbf6)
- Redis Lock 续期线程池设置名称,并设为守护线程 (de421b2)
- RetryableException 添加构造方法 (24c89d4)
- Security handler根据ErrorEnum设置状态码 (5d953e8)
Security不放通logout,以强制携带token (e81f0b1) * Security工具方法改为static (e91f96f)
vo/dto改为内部类形式 (107d819)
- 代码优化 (aea7453)
- 校验返回值改为 JWTClaimsSet (5f4ab55)
- 修改 SimpleRes 取消内部类,减少码量 (979a565)
- 修改数据源配置方式,由列表改为 map (373b269)
- 优化 CollectUtil (d128d58)
- 优化 StringUtil,添加 contains、subString 方法 (dabbd19)
- 优化代码 SimpleResAdvice (bd3aa0b)
优化代码健壮性、异常处理 (0735617)