文章

框架版本更新说明

框架版本更新说明

1.0.0版本发布:

发布时间:

2023-4-20

包含内容:

用户,组织,角色,权限系统通用安全功能和字典,消息,配置等开发所需基础功能。

使用方法:

开发框架搭建

-——————————————————————————————————————————————————————————————————–

1.1.0版本发布:

发布时间:

2023-10-25

包含功能:

  1. SpringBoot版本由2.4.13升级到2.6.15,用于修复安全漏洞

  2. 新增多数据源功能实现
    多数据源管理

  3. 增加对CAS和OAuth2单点登录系统的单点登录和单点登出的方便集成功能
    集成CAS单点登录功能

  4. 用户组织同步功能优化
    使用方式改为如下步骤:
    a.实现用户和组织同步类(UserSyncBase,OrganizationSyncBase)
    b.通过API或者消息等方式获取用户或组织数据
    c.将获取的用户或组织数据存入同步表(SECURITY_DATA_SYNC_LOG)
    d.通过定时任务按获取的用户或组织数据的顺序执行同步任务
    用户和组织数据同步方法

  5. 系统登录功能优化
    a.用户登录支持账号,手机号和邮箱三种登录方式
    b.用户登录支持验证码
    c.用户登录支持失败后限流功能
    d.增加用户密码过期时间配置功能,登录时检查用户密码是否过期
    e.用户登录后可指定查询用户的所有系统或指定系统权限信息
    系统登录方式

  6. 系统操作日志功能优化
    a.日志中增加请求IP,操作菜单和系统代号信息
    b.操作日志方法注解支持动态日志模板
    c.框架本身的日志模板支持可配置
    系统操作日志

  7. 用户密码功能优化
    a.修改用户密码时增加密码规则校验
    b.增加对指定URL或者所有请求中的password字段进行格式校验,用来防止密码设置为空或者连续数字等规则,避免触犯公司的安全扫描规则

  8. 系统管理部分菜单添加权限码控制

  9. 系统配置SystemConfig功能优化
    查询后增加缓存处理用来提高查询性能

  10. 框架中Spring Security安全配置类支持自定义扩展

-——————————————————————————————————————————————————————————————————–

1.2.0版本发布:

发布时间:

2024-7-4

包含功能:

  1. 实现用户和组织数据同步功能,能同步开发框架本身或者第三方系统的用户和组织数据。

    用户和组织数据同步方法

  2. 新增字典集转换后的显示格式属性format,实现字典转换后能平铺显示字典name和value的功能,用于简化调用框架API时接收结果数据。

    1
    2
    
    #字典转换后的name和value的显示格式:flat-平铺显示,wrap-嵌套显示
    base.framework.itemset.format=wrap
    
  3. MyPage泛型移除MyBaseEntity限制,使之可适用于无ID,CREATE_USER,CREATE_TIME等字段的表。

    1
    
    MyPage<T>
    
  4. MyBaseController,MyBaseService和MyBaseServiceImpl基类中去掉实体必须继承MyBaseEntity的泛型限制,这样可以让开发框架支持业务系统遗留表。

  5. 多数据源SessionFactory中的MapperLocations改为从mybatis-plus.mapper-locations参数读取,这样使用多数据源时也可以设置mybatis的sql xml文件存放位置。

    1
    2
    
    #配置mapper.xml文件的路径位置
    mybatis-plus.mapper-locations=classpath*:/mapper/**/*.xml
    
  6. 将base-security和base-utility中的controller类移动到独立的base-security-api和base-utility-api子项目中,用于在向微服务框架过渡中作为依赖包使用。

  7. 实现用户后面一次登录会将前面一次登录“挤下线”的功能。

    1
    2
    
    #是否允许用户多次登录,默认为true,当为false时,用户后面一次登录会将前面一次登录“挤下线”
    base.security.login.multiple.enabled=true
    
  8. 开放所有IP的跨域限制,以后不需要再配置base.security.allowed.origins跨域参数。

  9. 单点登录客户端实现对接oauth2协议的单点登录,包括oauth2的opaque token和jwt二种token模式。

  10. 系统消息功能重构,实现供第三方系统集成使用的消息API。

  11. 实现登录成功后能自定义设置用户的额外信息。

    开发框架扩展能力

  12. 用户组织关联新增关联类型字段(RELATION_TYPE:primary-主组织,secondary-副组织),用于支持一个用户对应多个组织的业务场景。

  13. 实现自定义用户密码的验证规则。

    开发框架扩展能力

  14. Date字段值默认按yyyy-MM-dd HH:mm:ss格式和GMT+8时区进行格式化。

    1
    2
    3
    
    #json和实体对象中的Date类型字段按以下格式进行转换
    spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
    spring.jackson.time-zone=GMT+8
    
  15. 框架本身按照等保和密评要求改造。包括用户密码加密,用户权限防篡改,用户账号锁定,密码过期时间配置,密码验证规则,三员管理功能等。

  16. 业务异常BusinessException实现设置自定义的异常代码code值。

    1
    2
    
    //框架版本>=1.2.0时,还可以直接设置异常编码
    throw new BusinessException(10000, "用户组织id为空!");
    

-——————————————————————————————————————————————————————————————————–

1.2.1版本发布:

发布时间:

2025-2-5

包含功能:

1.2.0版本的问题修复和小功能更新。

对应前端框架:

前端框架版本号:1.8.3

使用方法:

全新项目:开发框架搭建

升级原有项目:框架版本升级指南

本文由作者按照 CC BY 4.0 进行授权