JeeSite V5.14.0 发布,多项更新

升级内容

Vue 分离端版本

升级 Vite 7.1.9、turbo 2.5.8、typescript 5.9.3、unocss 66.5.3 等依赖库
优化 Table useColumns 性能,减少 computed 计算
优化 Table 子表列设置 dictType 时,无需再调用 initDict 方法
优化 Upload 文件上传组件一些参数,默认从后台获取,无需前端配置
优化 Axios 当 errorMessageMode: ‘none’ 的时候,仍返回 response 数据
调整 Vite 插件 vite-plugin-monaco-editor 为 vite-plugin-monaco-editor-esm
修正 useTable 设置 showIndexColumn: false 时,表格右上角设置,存储的 序号 未生效问题
修正 Table 列 edit: true 单元格编辑为空的时候不显示编辑图标问题
修正 BPM 流程图 列表标题 前的竖线 定位到顶部的问题

后端 Spring Boot 3 依赖升级

升级 spring boot 3.5.6、mybatis-spring 3.0.5、snakeyaml 2.4、logstash-logback 8.1、logback 1.5.19
升级 commons-io 3.18、commons-io 2.20.0、twelvemonkeys 3.12.0、fury 0.10.3、bcprov 1.80
升级 minio 8.5.17、aliyun-sdk-oss 3.18.3、cos_api 5.6.255、qiniu-java-sdk 7.19.0、esdk-obs-java-bundle 3.25.7
升级 swagger3 2.2.36、springdoc 2.8.13、jodconverter 4.4.9
升级 docker 插件,支持 buildx 多架构环境部署

后端架构优化增强

新增 Dao 分组聚合查询 sqlMap.getGroup ().setGroupBy (分组字段).setHaving (分组条件)
新增 Dao toOrderSql () 和 toGroupSql () 方法,当为空的时候不输出 ORDER BY 和 GROUP BY 关键字
新增 CacheUtils 工具 computeIfAbsent 方法,当值不存在时,调用第二个参数
新增 SpringUtils 工具 getBeanIfAvailable 方法,如果可用则返回 Bean,不抛出异常
新增 J2Cache 接口 putIfAbsent 方法,当 Key 不存在时才设置缓存数据
新增 logger-default.xml 日志默认配置,可自定义覆盖默认参数
新增 mybatis-default.xml MyBatis 默认配置,可自定义参数
新增 beetl-default.properties Beetl 模版默认配置,可自定义覆盖默认参数
新增 logger-default-cloud.xml 微服务日志默认配置,可自定义覆盖默认参数
新增 -Dspring.config.additional-location 方式读取配置文件
新增 LockManager 锁管理器,支持本地锁和分布式锁,当开启集群时,自动使用分布式锁
优化 Idempotent 幂等注解 增加 sessionId(是否为会话级别的幂等验证)和 cacheName(可以自定义缓存名)参数
优化 Lang Zone 语言和时区参数,当指定的时候再进行更改默认,否则读取操作系统语言和时区
优化 startup.bat (sh) 启动脚本,支持接受参数,如 --spring.config.additional-location=app.yml
优化 application.yml 配置文件的工具提示,让 jdbc 多数据源配置也有工具提示。
优化 /error/*,如 500、400、403,当 web-mini 无视图的时候,返回 errorCode 信息
优化 错误提示页面视图(/error/500、400、403.html)增加 刷新页面 按钮,方便重载页面
优化 Web 服务启动速度,大幅度提升(社区版测试 Apple M2 + IDEA 平均约 4 秒内完成启动)👍🏻
优化 ThreadUtils.sleep 增加 ThreadUtils.currentThread ().interrupt ();
优化 StringUtils 驼峰命名法工具优化,使用下划线开头的时候忽略它,并更新一些标为弃用的方法
调整 Caffeine 缓存超期时间,将 惰性清理 改为 主动清理,当超期时间较短的时候可能会时钟错乱
调整 logger-core.xml、logback-spring.xml 日志配置文件,优化日志输出
调整 移除 配置参数 mvc.pathmatch.matching-strategy: ANT_PATH_MATCHER
调整 删除或保留 ueditor.json 配置文件,删除后将使用默认 ueditor-core.json
调整 默认加载 mybatis-default.xml,可通过 mybatis.configLocation 参数指定 mybatis-config.xml
调整 默认 application-prod.yml 增加 mybatis.mapper.refresh.enabled: false 参数
调整 默认参数 spring.main.lazy-initialization 为 true,支持懒加载启动
调整 Bean 注入方式,将默认的字符注入更改为构造注入并完善方法注释
调整 AuthorizingRealm 登录成功和退出成功接口,增加返回值
调整 web.swagger.enabled 参数为 springdoc.api-docs.enabled 和 springdoc.swagger-ui.enabled
调整 移动 root 目录中的内容,到根目录下

后端功能优化增强

新增 Job 调度目标串的 jobContext 参数,可获取 JobExecutionContext、任务中断状态、中断回调等
新增 Job 当暂停或运行一次的时候,会发起中断任务通知,以便任务做出相应处理;优化监听日志输出
新增 Excel 导入导出实体的单元测试类 ExcelImportEntityTest、ExcelExportEntityTest
优化 UserUtils 工具 get、getByLoginCode 方法的缓存锁,升级为行级锁,提高性能
优化 Login 登录 subject.isPermitted (“user”) 调用 2 次,优化为 1 次,以及登录逻辑,性能提升
优化 Login 当关闭多地登录且被挤下时,给予用户提示,而不是直接跳转登录页,优化体验
优化 Login 多地登录逻辑为登录后校验,防止用户权限过期后再次调用,导致账号异常掉线
优化 DAO 字段权限排除方法 setExcludeAttrNames,支持设置 * 排除所有列;
优化 web-mini 迷你服务,去掉一些依赖,缩减打包大小,并有多项改进
优化 sysCache 系统缓存,默认对系统性的缓存,延长存活时间
优化 deviceType 登录设备合法性验证注释提示(根据业务需要自行添加)
优化 CMS 内容管理,给 Category 栏目添加缓存,性能提升
优化 Application 启动类完成后输出的提示信息

AI 能力增强

升级 spring ai 1.0.3
重构 jeesite-ai 代码目录,新增 parent-ai,重命名 cms-ai 为 ai-cms
新增 jeesite-ai-tools 工具调用模块,支持会话保持控制权限,如:当前用户只能查询有权限的数据
新增 AI MCP 服务端和客户端调用,展示远程工具调用示例,如:查询某某用户信息
优化 AI 大模型返回异常输出消息,将消息返回给客户端(仅用于调试,可关闭返回)
优化 支持最新版本 ollama 本地模型的 thinking 深度思考信息输出
调整 AI 工具调用参数,重命名 tool-calls 为 tools.enabled

微服务版

优化 FeignClient 生成的 Bean 名称,直接使用 类名 小写开头,方便业务根据名称注入
调整 默认关闭 sentinel,可根据 docs.jeesite.com 文档介绍开启

问题修复

修正 CMS 当栏目为显示第一篇文章的时候,点击保存,不关闭窗口
修正 ExcelField 声明在 get 方法上时提示 wrong number of arguments 问题
修正 阿里云对象存储,私有地址生成可能会提示 Can not override response header on content-type
修正 Beetl 全栈版页面小窗口下,侧边栏未完全展开问题
升级方法
修改所有 pom.xml 文件中的 jeesite-parent 版本号为 5.14.0.springboot3-SNAPSHOT
Spring Boot 2 版本,修改所有 pom.xml 文件中的 jeesite-parent 版本号为 5.14.0-SNAPSHOT
如果您修改了 parent、common、modules 等项目源码,请与 git 上的代码进行同步
升级了众多依赖,一般都是向下兼容,根据具体情况调整
更新 com.jeesite.common.shiro 包、LoginController 类
更新 jeesite-core.yml、logger-core.xml、logback-*.xml 配置文件
如果修改过 mybatis-config.xml 文件,请修改 mybatis.configLocation 参数
删除或保留 beetl.properties 默认配置,删除后将使用默认 beetl-default.properties
删除或保留 ueditor.json 配置文件,删除后将使用默认 ueditor-core.json
因为该版本将字段注入更改为构造注入,如有提示构造错误的,请进行按提示修正,现有业务可继续使用字段注入方式
移除了 mvc.pathmatch.matching-strategy 参数,使用 Spring 默认,如果您用了复杂请求 URL,可不做调整
默认开启 lazy-initialization 参数,如 InitializingBean、@PostConstruct 可能需要 @Lazy (false)
AI 人工智能模块目录重构,根据实际情况调整或选择是否更新,或保持您的业务现状
如果您是跨版本升级,请注意每一个版本的升级方法,业务上有调整的地方进行修改
执行 /bin/package.bat(sh) 打包脚本,强制更新依赖。

Vue 分离端

请与 jeesite-vue 代码仓库源码进行同步,合并代码,手动解决冲突代码
如果您是跨版本升级,请注意每一个版本的升级方法,业务上有调整的地方进行修改
匹配后端版本为 JeeSite v5.14.0 springboot3 或 springboot2

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自不量力的A同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值