# v2.3.0 升级至 v2.3.1

# 组件更改说明

该升级指南以v2.3.0版本为基准,更早的版本请先参考之前版本的升级文档。

diboot v2.3.x是基于spring boot 2.5的长期维护版本。

将diboot所有的组件版本号替换至2.3.1的最新版本,然后按照下述内容进行相关更改即可。

# diboot-core 内核

  • 配置参数统一前缀更名

如自定义了以下参数,对应修改为新的参数名。未自定义的无需更改。

# 原配置
diboot.core.pageSize=20
diboot.core.batchSize=1000
# 更名为
diboot.core.page-size=20
diboot.core.batch-size=1000
1
2
3
4
5
6

# diboot-scheduler 定时任务组件

  • 如果依赖了定时任务组件,手动执行以下SQL更新数据结构(以下为MySQL脚本,其他库请自行转换):
ALTER TABLE schedule_job ADD COLUMN save_log tinyint(1) default 1 not null COMMENT '是否记录日志' AFTER job_status;
ALTER TABLE schedule_job MODIFY COLUMN job_comment varchar(200)  COMMENT '备注' AFTER save_log;
ALTER TABLE schedule_job ADD COLUMN create_by_name varchar(50) COMMENT '创建人名称' AFTER create_by;
ALTER TABLE schedule_job MODIFY COLUMN update_time  timestamp  null on update CURRENT_TIMESTAMP COMMENT '更新时间' AFTER create_by_name;

ALTER TABLE schedule_job_log DROP COLUMN update_time;
ALTER TABLE schedule_job_log DROP COLUMN create_by;
1
2
3
4
5
6
7
  • 升级后定时任务失效问题的处理方案:

    • 方案1:升级前端后,在前端将所有定时任务进行编辑,重新选择任务后保存,定时任务即可生效。
    • 方案2:将schedule_job表中的job_key字段的uuid值更改为job的simpleClassName值,如ClearOperationLogJob更新SQL如下:
    update schedule_job set job_key='ClearOperationLogJob' where job_name='清除过期操作日志'
    
    1
  • 如果也依赖了IAM组件,可添加创建定时任务时进行创建人名称填充。或使用devtools重新生成 diboot-scheduler 基础代码。

# diboot-message 消息组件

  • 如果依赖了消息组件,手动执行以下SQL更新数据结构(以下为MySQL脚本,其他库请自行转换):
ALTER TABLE `message` MODIFY COLUMN `template_id` bigint COMMENT '信息模版id' AFTER `app_module`;
1

支持消息内容不使用模板

# 前端升级说明

  • diboot-antd-admin前端调整

升级前请下载diboot-antd-admin 2.3.1 (opens new window)源码包,以下升级流程将依赖此包。

  • diboot-element-admin前端调整

升级前请下载diboot-element-admin 2.3.1 (opens new window)源码包,以下升级流程将依赖此包。

  • 对比新旧版本的相关页面及代码,替换或合并至本地。