一、引言
JeeSite作为一款基于Spring Boot和Vue的Java快速开发平台,一直以来以其高效的开发效率和丰富的功能特性受到广大开发者的青睐。近期,JeeSite发布了其最新版本V5.8.1,不仅带来了诸多新增功能,还针对性能、安全性和用户体验进行了全面优化。本文将详细解析JeeSite V5.8.1的主要升级内容,并探讨其背后的技术革新和应用价值。
二、新增功能
静态文件项目优化
JeeSite V5.8.1新增了static静态文件项目,这一改动旨在减轻核心模块和框架包的体积,提升项目的加载速度和运行效率。通过将静态资源如图片、CSS、JavaScript等文件单独管理,开发者可以更加灵活地控制资源的加载和缓存策略。
丰富的模板和组件支持
- Beetl表单控件与函数:新增了Beetl模板引擎的表单控件和函数,以及JavaScript组件插件,为开发者提供了更多的模板定制选项和前端交互能力。
- Excel导入导出:增加了Excel导入导出测试类,并支持通过ExcelFields注解直接映射类属性,大大简化了Excel文件处理的复杂度。
- 国密算法支持:新增了SM2、SM3、SM4等国密算法工具类及测试类,同时提供了encrypt.defaultKey、encrypt.storeBase64、encrypt.smAlgorithm等配置项,支持一键替换传统加密算法为国密算法,增强了系统的安全性。
灵活的加密与结果包装
- 加密处理:新增了EncryptTypeHandler和SM4TypeHandler等国密加密的MyBatis Handler,为数据加密提供了更多选择。
- 结果包装:通过web.isDefaultResult、web.resultParamName和headerParamName等参数,支持全局或个别接口结果的自定义包装,提高了API的友好性和可维护性。
其他新增功能
- PwdService服务类:提供了密码相关操作的便捷服务,方便开发者自定义密码处理逻辑。
- ckplayer视频播放插件:替换UEditor上传的视频播放组件,提升了视频播放的兼容性和用户体验。
- DBM数据表管理:新增了草稿暂存功能,确认建表前可预览表结构和索引,减少了因误操作导致的数据库问题。
- 用户信息查询:新增了userService.findListByMobile接口,支持通过手机号查询用户基本信息,增强了用户信息的管理能力。
三、性能与安全优化
账号登录优化
将“账号+手机验证码登录”优化为“手机号+验证码登录”,并支持手机号绑定多个账号的登录方式,提升了登录流程的便捷性和安全性。
用户体验优化
- 查询按钮动画:优化了查询的更多按钮展示,增加了双箭头动画效果,提升了操作的直观性和趣味性。
- 图片上传格式:默认支持webp格式的图片上传,减小了图片体积,加快了页面加载速度。
安全性增强
- 删除表逻辑优化:将DBM的dropTable操作替换为deleteTable逻辑删表,新增dropTable物理删除表功能,提供了更灵活的数据删除选项。
- 加密配置:通过增加加密相关的配置项,支持一键替换为更安全的国密算法,增强了系统数据的安全性。
四、升级方法
跨版本升级注意事项
如果是跨版本升级,开发者需要特别注意每一个版本的升级方法,并对业务上有调整的地方进行修改。升级过程中,应首先更新pom.xml文件中的jeesite-parent版本号至最新版本,然后根据需要替换相关方法和配置。
Spring Boot 3版本升级
对于需要升级到Spring Boot 3版本的用户,除了更新pom.xml文件中的版本号外,还需注意解决Spring Boot 3.2可能存在的兼容性问题,并移除不再支持的依赖项。
Vue分离端版本升级
Vue分离端版本的升级需要与jeesite-vue代码仓库进行同步,合并代码并手动解决冲突。确保前端代码与后端版本相匹配,以保证系统的稳定运行。
五、结论
JeeSite V5.8.1的发布,不仅带来了丰富的功能扩展和性能优化,还通过引入国密算法和增强数据加密配置,进一步提升了系统的安全性。同时,对登录流程、查询操作和图片上传等用户体验的优化,也让开发者和用户能够享受到更加便捷和高效的操作体验。对于正在使用JeeSite进行项目开发的团队来说,这次升级无疑是一次值得期待的技术革新。
项目地址:
https://gitee.com/thinkgem/jeesite5
官方技术交流群:
版权归原作者 前端组件开发 所有, 如有侵权,请联系我们删除。