升级内容
-
后端依赖:springboot 2.2.8、spring framework 5.2.7、mybatis 3.5.5、mybatis-spring 2.0.3、jsqlparser 3.1、druid 1.1.22、shiro 1.5.3、j2cache 2.8.0、beetl 3.1、commons-fileupload 1.4、commons-beanutils 1.9.4、commons-text 1.8、ant 1.10.7、jackson 2.11.0、fastjson 1.2.70、dom4j 2.1.1、jsoup 1.12.2、thumbnailator 0.4.11、twelvemonkeys 3.5、blade-patchca 1.1.2、zxing 3.4.0、poi 4.1.2;
-
其它依赖:tomcat 9.0、mysql jdbc 8.0、oracle ojdbc8、jtds 1.3.1、mssql 7.4.1、postgresql 42.2 等等;
-
JeeSite Cloud 版本:spring cloud Hoxton.SR5 2.2、openfeign 10.10.1、nacos 1.2.1、zipkin 2.19.3
-
前端依赖:jquery 3.5、toastr 2.1 等等(兼容 ie9+ 及其它所有浏览器)支持前后分离应用 API 自适应;
-
重构数据库初始化程序,耦合性更低,各自模块管理各自的初始化脚本和版本升级脚本;自动检测模块相关数据表的安装状态,根据情况初始化;官方升级模块中不会包含任何删除操作,防止误操作所以脚本更安全。
-
新增插件:JS/CSS 压缩 Maven 插件工具,支持 ES6 语法。
-
JeeSite Cloud Hoxton 2.2 增强版同步发布。集成阿里优秀组件 Nacos 服务治理与配置中心、集成 Sentinel 流量卫兵;集成 Zipkin 链路追踪;集成 LCN 分布式事务等,详见 JeeSite Cloud 介绍,你一定喜欢。
-
支持 JDK 11。
内置功能
-
用户选择组件:新增左树右表结构展现,支持维度:按组织机构、按岗位查询、按角色查询、按用户类型查询
-
新增文件预览模块:jeesite-module-filepreview(替代原模块 weboffice)支持 office 转换为 pdf 在线预览(LibreOffice);支持图片放大缩小旋转等操作;支持视频在线播放,支持 txt 等在线预览。
-
新增可视化数据大屏模块:jeesite-module-visual(Avue-data 的后台实现)拖拽即可无需编程就能轻松搭建数据大屏,多种图表组件支撑多种数据类型的分析展示
-
安全审计:新增账号密码审计(未修改初始密码、使用简单密码、定期未修改密码、长期未登录、未设置密保、以上全部、审计结果数据导出);菜单权限审计(根据菜单及权限查询用户);用户权限审计(根据用户查询菜单及权限);有效审查账号及关键功能权限的安全范围。
-
访问日志:新增日期快速选择范围示例(如:今日、本周、本季度、上月)
-
访问日志:新增登录失败日志记录,方便安全审计
-
新增 jeesite-module-oss-minio 云存储模块
-
优化体验:Tab页签新增右键:新窗口打开
-
服务器监控:信息监控内核升级改进
-
新增亮蓝主题
前端组件
-
form:fileupload 组件:增加一些回调事件,如创建、完成、添加和删除文件;
-
form:fileupload 组件:支持上传后,即可预览文件;支持点击文件名预览或者下载
-
form:fileupload 组件:新增图片放大缩小旋转预览;禁止重复上传文件等;
-
form:select 组件:新增 itemStatus 属性,支持停用的字典也显示到列表里,但是不可选择,使用方法:dictType 加 __all 后缀,则返回不选择的停用状态的字典。
-
form:radio、form:checkbox、form:select 组件:增加只读属性,可以替代 disabled + hidden
-
form:radio 组件:新增 blankOption;select 新增 blankOptionValue 给空白选择项目设置一个值
-
form:treeselect 和 listselect 组件:新增弹窗之前调用的函数,可修改弹窗 options 选项,或阻止弹窗
-
form:treeselect 树选择优化:只有双击节点的时候才关闭树。
-
form:listselect 组件:新增 setSelectDataFuncName、checkFuncName 属性
-
新增 beetl dict 工具:简化 DictUtils 的书写,如:dict.label、dict.value、dict.json
-
全面优化 js.confirm、ajaxSubmit、ajaxSubmitForm 方法,支持 options 对象参数,增强扩展性
-
select2 多选情况下不自动关闭,并禁用 First Item 高亮
接口优化
-
登录接口:优化多次调用登录接口,允许改变登录身份,无需退出再登录
-
登录接口:登录提交信息加密 shiro.loginSubmit.secretKey 新增 Base64 的支持
-
消除缓存工具误用,将 CacheUtils 里的 sysCache 缓存分离出 SysCacheUtils 工具
-
新增使用智能参数接收器,同时支持 JSON 和 FormData 的参数接受,一接口多用
-
优化 crudservice 的 delete 方法,支持传递 id_in 接受多条数据删除
-
page 优化,简化手机端应用,当填写没有的页码的时候返回空数据
-
用户类型接口优化,Cloud 环境下从基础微服务中获取数据
-
__ajax=json 支持添加到 header 里面,简化 url 参数
其它改进
-
数据权限:新增 API 方式实现(适应 Cloud 环境,基础用户表与业务数据表跨库的情况)
-
新增配置:jdbc.remarksReporting 连接属性设置(可获取到表的remark备注)
-
新增配置:web.jsonp.enabled 参数,默认不开启(为兼用旧版保留,建议使用 CORS)
-
新增配置:web.view.favorPathExtension 和 favorParameter 参数,默认关闭 .json、.xml 后缀匹配,默认开启使用 __ajax=json、__ajax=xml 参数名称匹配
-
移除 j2cache.properties 配置文件,将内容移动到 application.yml,并加 j2cache 前缀,统一管理。
-
BPM:任务列表,新增按流程名称查询、表单KEY查询、业务KEY查询等
-
BPM:退回到指定处理人更准确(当退回节点没有处理人的时候优化)
-
BPM:特事特办自由跳转后,支持跳转的节点设定处理人。
-
BPM:flowable 脚本初始化改进,解决因jdbc驱动高版本和使用低版本数据库时导致初始化失败问题
-
BPM:BpmTask 增加 claimTime 签收时间和接受人编码 assigneeCode 字段
-
BPM:提交意见存储 bytes 重写,解决不受部署环境影响导致的存储意见数据乱码问题。
-
JOB:增加按名称和分组查询条件;增加查询权限控制(系统为全局任务;普通看自己创建;管理员看全部)
-
Swagger:支持微服务文档管理,微服务访问路径:${adminPath}/${spring.application.name}/swagger/swagger-ui.html
-
mybatis 类型别名扫描 有原来的 BaseEntity 替换为 @Table 注解扫描,避免有些不想被扫描的到的实体作为别名。
-
JsonMapper、XmlMapper:操作工具类,增加 JsonView 过滤参数,方便过滤所需数据
-
datasource:数据源切换增加缓存提高性能(Class.forName可能会消耗时间)
-
datasource:新增 jdbc.encrypt.url 是否加密参数
-
sqlserver jdbc:支持 xa 数据源;新增 h2 数据库初始化
-
替换 docker 插件,可直接通过 maven 插件部署和运行
-
excel 工具支持字典数据为多个的时候的数据解析
-
excel 导入工具支持 BigDecimal 类型
-
其它各种细节优化改进。
升级方法
-
service.get(pkClass, pkValue, isNewRecord) 替换为 service.getAndValid(),参考 EmpUserController
-
service.findPage(page, entity) 替换为 entity.setPage(page); service.findPage(entity);
-
service.convertChildList(sourceList, targetList, parentCode) 替换为 service.convertTreeList(sourceList, parentCode)
-
fileUploadService.compressImage 替换为 ImageUtils#thumbnails(File, int, int, String)
-
common 项目的 com.jeesite.common.idgen.IdGenerate 重命名为 com.jeesite.common.idgen.IdGen
-
mybatis 类型别名扫描有原来的 BaseEntity 替换为 @Table 注解扫描,如果提示找不到别名就添加此注解
-
shiro.loginSubmit.secretKey 加密默认为 Base64,请注意更新 DesUtils.java 和 des.js 文件
-
对象序列化统一管理,请将 com.jeesite.common.lang.ObjectUtils 类更新到最新版本
-
系统缓存 sysCache 消除无用,接口改进,替换如下:
-
CacheUtils.get(key) 替换为 SysCacheUtils.get(key) 方法
-
CacheUtils.get(key, defaultValue) 替换为 SysCacheUtils.get(key, defaultValue) 方法
-
CacheUtils.put(key, value) 替换为 SysCacheUtils.put(key, value) 方法
-
CacheUtils.remove(key) 替换为 SysCacheUtils.remove(key) 方法
-
CacheUtils.clear 替换为 CacheUtils.clearCache
-
-
服务接口改进:默认关闭 .json、.xml 后缀匹配,请使用 __ajax=json、__ajax=xml 参数名称匹配,也可以通过 web.view.favorPathExtension 和 favorParameter 参数调整默认设置。
-
form:radio 新增了 blankOption=”true” 属性,如果不需要,请删掉 blankOption 属性
-
form:radio、form:checkbox、form:select 新增了 readonly=”true” 属性,如果你之前使用了 disabled + hidden,需要删除 readonly 属性
-
jQuery 升级到 3.5 可能会有一些不兼容,详见:https://jquery.com/upgrade-guide/3.0/
-
全局搜索 function onTablePageClose 方法,替换为 function onTabPageClose
-
在线文件预览升级(替换时选择:区分大小写、全字匹配):
-
搜索 jeesite-module-weboffice 替换为 jeesite-module-filepreview
-
搜索 preview=”weboffice” 替换为 preview=”true”
-
搜索 preview=weboffice 替换为 preview=true
-
更多更新日志查看: http://jeesite.com/docs/upgrade/