Ballcat v0.4.0 发布,Java 快速开发脚手架

栏目: 软件资讯 · 发布时间: 3年前

内容简介:BallCat 0.4.0 已经发布,此版本更新详情如下: Warning mybatis-plus 升级,其对应一些 count 方法,返回值修改为了 Long 类型,项目中有使用的地方需要对应修改 默认登录时返回的 token 属性有所变更,原 role...

BallCat 0.4.0 已经发布,此版本更新详情如下:

Warning

  • mybatis-plus 升级,其对应一些 count 方法,返回值修改为了 Long 类型,项目中有使用的地方需要对应修改
  • 默认登录时返回的 token 属性有所变更,原 roles 修改为 roleCodes,前端注意对应升级
  • websocket 默认使用 local 进行分发,这将导致集群状态下的数据推送异常,如需集群部署,请修改对应配置
  • websocket 相关接口 MessageSender 移除,该接口并入 MessageDistributor ,注意修改对应依赖引入类型

Added

  • feat:ballcat-auth 授权服务器定制增强:
    • 允许用户自定义 AccessTokenConverter,修改自省端点 /check_token 的返回值
    • 允许用户定制授权处理器或者新增授权处理器,用户可以通过覆盖 TokenGrantBuilder 实现
    • 允许用户添加自己的 AuthenticationProvider 方便处理自定义的 grant_type
    • 添加 OAuth2ClientConfigurer 抽象接口,方便用户替换 ClientDetailsService 的配置方式
    • ballcat-system 模块解耦,方便复用 ballcat-auth 快速搭建一个授权服务器,例如 C 端用户 和 后台用户分离登陆系统,各搭建一套基于 OAuth2 的登录。
    • 根据 OAuth2 规范,调整 check_token 端点响应,在 token 不正确时响应 200,响应体为 { active: false },而不是返回 400
  • feat:数据权限对于 jsqlparse 4.2 后,连表使用尾缀多个 OnExpression 方式的 SQL 解析支持
  • feat:角色添加 scopeResource 属性,以便支持自定义数据权限设置一些信息
  • feat:默认的 jackson 时间序列化添加了 Instant 类型支持,防止在使用时出现异常 InvalidDefinitionException: Java 8 date/time type java.time.Instant not supported by default

Changed

  • refactor:资源服务器对于客户端凭证生产的token 解析支持,对应的 userdetails 为 ClientPrincipal

  • refactor:授权服务器自省端点的 scope 属性响应调整,根据 OAuth2 自省端点协议,scope 应返回字符串,用空格间隔

  • refactor:数据权限调整

    • 问题修复: fix 数据权限在表名使用 `` 转义字符时失效的问题
    • 性能优化:对于无需数据权限控制的 sql 在解析一次后进行记录,后续不再进行解析处理
    • 结构调整:防止误用以及避免歧义,DataScopeHolder 修改为 DataScopeSqlProcessor 的私有内部类
  • refactor:SelectData 试图对象中的 value 修改为 Object 类型,selected 和 disabled 修改为 Boolean 类型

  • refactor:系统用户相关的 service 和 mapper 层,修改使用 Collection 接收参数,方便使用

  • refactor:TokenAttributeNameConstants 常量类拆分

  • refactor:UserInfoDTO 属性调整,新增了 menus 用于存储用户拥有的菜单对象集合,修改 roles 属性用于存储用户拥有的角色对象集合,原 roles 属性修改为 roleCodes 存储角色标识集合

  • refactor:为避免歧义,登录和自省端点返回信息中的属性名称 roles 修改为 roleCodes

  • bug:修复使用 ballcat-spring-boot-starter-web 时,若没有引入 security 依赖则启动异常的问题

  • refactor: system 相关事件优化调整

    1. 用户组织变动时发布 UserOrganizationChangeEvent 事件
    2. 用户新建的事件由 UserChangeEvent 修改为 UserCreatedEvent
    3. system 的 event 类从 biz 迁移到 model 模块中
  • refactor:ballcat-common-websocket 移除 MessageSender 接口,将其并入消息分发器 MessageDistributor

  • refactor:ballcat-spring-boot-starter-websocketredis 解耦,将默认注册的消息分发器由 redis 改为 local,基于内存分发。可通过 ballcat.websocket.message-distributor 属性修改为 redis 或者 custom,值为 custom 表示,用户自己定制 MessageDistributor(如修改为使用 mq,可用性更高)

    ballcat:
        websocket:
            # 默认为 local 仅支持单节点使用,redis 基于 PUB/SUB 消息订阅支持了集群下的消息推送问题
            message-distributor: redis # local | redis | custom
    
  • refactor:ballcat-spring-boot-starter-redis 调整 AddMessageEventListenerToContainer 的注册方式,防止用户配置包扫描导致的加载顺序异常

  • refactor:有用户绑定组织时,不允许删除组织

Dependency

  • Bump spring-boot from 2.4.8 to 2.5.5
  • Bump lombok from 1.18.16 to 1.18.20
  • Bump mybatis-plus 3.4.4 to 3.4.3.4
  • Bump mybatis 3.5.6 to 3.5.7
  • Bump jsqlparser 4.0 to 4.2
  • Bump flatten-maven-plugin from 1.2.5 to 1.2.7
  • Bump spring-javaformat from 0.0.27 to 0.0.28
  • Bump hutool from 5.7.3 to 5.7.12
  • Bump spring-boot-admin from 2.4.2 to 2.5.1
  • Bump dynamic-datasource-spring-boot-starter from 3.3.2 to 3.4.1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Discrete Mathematics and Its Applications

Discrete Mathematics and Its Applications

Kenneth H Rosen / McGraw-Hill Science/Engineering/Math / 2003-04-22 / USD 132.81

Discrete Mathematics and its Applications is a focused introduction to the primary themes in a discrete mathematics course, as introduced through extensive applications, expansive discussion, and deta......一起来看看 《Discrete Mathematics and Its Applications》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

随机密码生成器
随机密码生成器

多种字符组合密码