Releases: jeecgboot/JeecgBoot
JeecgBoot 3.3.0 版本发布,基于代码生成器的企业级低代码平台
升级日志
不兼容的升级点:Websocket安全加强,增加 token 校验、接口签名拦截器的时间戳改造、System模块重构大。平滑升级有难度,请仔细对比修改日志。
重点升级
- websocket安全加强,增加token校验
- 【签名改造】 解决X-TIMESTAMP时区问题
- System模块开展代码p3c规范扫描大重构
- 升级代码生成器,支持生成权限注解和菜单的SQL
- vue2弹窗支持任意拖动位置
- 微服务模式下,多租户不支持问题修复
- 模板消息重构,提供全局统一推送接口(支持钉钉、企业微信、邮件、短信、系统消息)
- 提供数据脱敏注解
- 发现的SQL漏洞修复
- Vue3前端与后台版本号同步,功能也已经全部同步
后台问题
- 分表分库的demo以及分库分表整合案例的文档issues/I52EN1
- 签名校验中的时间校验有时区问题issues/3482
- websocket服务端,存在性能和安全问题issues/3278
- 代码生成模板中,前端代码多了一个结尾issues/I53X5M
- post请求X_SIGN签名拦截校验后报错, request body 为空issues/I53J5E
- JwtFilter中ThreadLocal需要及时清除issues/I53J5E
- Online表单开发,代码生成时选择ERP页面风格,vue2前端文件错误issues/I54TAK
- category/loadOne接口问题issues/3663
- 3.2.0用online表单生成erp抛出异常issues/I55OSQ
- 获取系统用户列表时,使用SQL注入生效issues/3676
- 这块代码有SQL注入的风险issues/3538
- online表单开发 功能测试和生成的代码结果不一致bugissues/3625
- excel导出导出转换器接口无法找到issues/3708
- seata测试product服务启动失败issues/I57ZUG
- 建议升级fastjson版本至1.2.83,低版本爆出漏洞issues/I58VD6
- 字典接口存在SQL注入风险issues/3713
- @JRepeat注解添加之后无法实现重复提交的拦截提示issues/I59M95
- 路由网关无法添加path过滤issues/I57I6O
- 3.0微服务版存在Spring Cloud Gateway SpEL表达式注入问题issues/I55RTF
- 生产prod的问题issues/I5A134
- 平台维护的路由网关菜单问题issues/3763
- 3.2.0 rabbitma 发送延迟消息存在5秒中的间隔issues/3755
- Autopoi字段Type文档与实际代码控制不一致issues/3732
- 3.2版本,跑测试用例代码抛出异常issues/I561IU
- DictAspect Jackson序列化报错issues/3629
- 自动生成的后台接口/exportXls中直接使用queryWrapper过滤issues/I58SM9
- 拼写错误,JeeccgBaseConfigissues/I5CMHC
- SQL增强bugissues/I5ATD8
- 多租户微服务之间调用找不到tenant-id(自定义页面)issues/I5AO20
- 中转HTTP请求,解决跨域问题bugissues/3826
- SQL注入及盲注高风险issues/I5C3VP
- 数据权限规则问题issues/3810
- 数据脱敏注解怎么用不了issues/3852
- 根据模板导出excel,无法导出图片issues/I59983
- 指定带过滤条件的字典table在生成代码后失效issues/I59983
- 启动报错,单体应用升级至V3.2.0版本issues/I55DJD
- 启动报错:java.lang.ArrayIndexOutOfBoundsException: -1issues/3653
- 项目启动后报错,数组下标越界issues/I55PDE
Vue2前端
- online在线生成小问题issues/3420
- 通过Online表单开发后,数据达到57万后,导出的excel中提示超时issues/I4JRE8
- 代码生成app页面没有此jsissues/I4WFGF
- character '@' that cannot start any tokenissues/I4XI00
- vue有些页面报错,但是在线演示的却没有issues/I4X63V
- JeecgBoot一对多示例,表单删除issues/I4VYOC
- 项目运行起来后前端访问列表页下的角色列表和用户列表报错issues/3472
- 给新建用户赋予角色的逻辑漏洞issues/3461
- 启动的时候提示信息issues/I52HJC
- 单标签页模式下,打开外部链接 报错误 “这是最后一页,不能再关闭了啦”issues/3546
- 用户为上级 负责部门下拉框选项的数据没有数据,需要从普通切换到上级才能有数据issues/I52Z8Z
- 富文本编辑器在服务器图片上传是相对路径issues/I4BCC3
- j-vxe-table点击事件冲突问题issues/I54E2M
- 部门用户可以有 admin权限的问题issues/3806
- JTreeSelect树形下拉框(异步加载) 自定义查询条件 查询结果问题issues/3709
- 下拉搜索框条件过滤issues/I5DAPN
- 内嵌子表风格bugissues/3800
Vue3前端
- 代码编辑器默认样式改成idea风格
- 支持企业微信/钉钉 oauth2登录
- 角色支持首页配置
- 我的消息--全部已读等接口报错issues/3420
- JTreeSelect 下拉树自定义组件 查询不到数据issues/96
- online配置部门选择后编辑,查看数据应该显示部门名称,不是部门代码issues/I5F3P4
- 前端升级到vue3后,从企业微信和钉钉的工作台免登入失败issues/I5BG1I
- Online对接积木报表后不显示打印按钮issues/3843
- JVxeTypes.upload 文件上传的时候,触发不了编辑issues/I5FTO6
- 是否支持OAuth2登录issues/I5DJZ8
- 附表问题控件类型问题issues/3854
- 列表查看详情,富文本不能下拉issues/I5ABAO
- 顶部菜单混合模式 分割菜单点击 导航无法显示issues/I5BIPO
Autopoi
- [issues/I4PU45] @Excel里面新增属性fixedIndex
- 导入字典替换需要将---替换成_,不然数据库会存
- mybatis-plus升级 时间字段变成了jdk8的LocalDateTime,导致格式化失败
- AutoPOI (Excel工具)==>excel根据模板导出功能issues/3687
- AutoPoi excel导入 ImportParams 中没有startSheetIndex参数issues/I57UPC
- autopoi模板导出Excel功能,#fe: 横向遍历不好用issues/3328
JeecgBoot 3.2.0 版本发布,基于代码生成器的企业级低代码平台
项目介绍
JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高效率,节省成本,同时又不失灵活性!
当前版本:v3.2.0 | 2022-04-25
源码下载
技术文档
- 官方网站: http://www.jeecg.com
- 技术文档: http://doc.jeecg.com
- 在线演示: http://boot.jeecg.com
- 新手入门: http://jeecg.com/doc/quickstart
升级日志
此版本重构很大,重点升级了SpringBoot、SpringCloudAlibaba、MybatisPlus到最新版、重构了微服务模块,同时针对代码做了规范优化。
重点升级
- 升级springboot 2.6.6
- 升级spring-cloud-alibaba 2021.1
- 升级mybatisplus 3.5.1
- 重构sentinel模块,支持持久化到nacos
- 重构gateway模块,熔断限流降级切换为sentinel
- 代码规范大重构
- 解决代码生成器不支持路径含中文或空格问题
解决微服务bug
- gateway,在网关路由页面如何设置路由条件Header issues/I52J6R
- 网关刷新问题#I442RS
- 微服务下Knife4j每次重新部署jar时,都要重启gateway服务才能显示成功#3185
- 微服务版,定时任务中,通过openfeign调用其他服务,报错tocken失效#I523YP
- 微服务之间的feign调用,如何免登录,同时又不会被暴露网关#I4Z69G
- 微服务框架下的定时任务和字典项查询无权限#2662
- 异步线程中调用openFeign访问远程服务,子线程的header中偶尔出现取不到token的情况#I4Q7FY
- 微服务都是在内网环境中,只有网关会暴露公网,服务调用不鉴权#2539
- 切换微服后,被调用服务要求鉴权怎么办#2171
- 微服务 springcloud版本漏洞#I52U2F
Issues处理
- 代码生成列表页面的图片支持点击放大预览功能
- 【安全机制加强】字典接口、online报表等敏感接口加字段限制 AbstractQueryBlackListHandler
- 敏感操作加操作日志,便于追踪
- swagger接口返回值,显示的是object问题代码调整
- poi导入问题#I4PU45
- 查询条件的值为等号= bug#3443
- 当搜索框里只输入 * 时,后台索引越界#3382
- 分子字典树前端代码生成错误#I4SKUS
- java 增强导入类异常#3479
- 订单流水号#I4W3XN
- 代码生成app页面没有此js#I4WFGF
- 3.1版本 online表单Datetime通过日期查询报错#3489
- Shiro安全漏洞提示#3498
- 浏览器显示乱码问题#I4YH95
- /sys/user/list接口使用部门departId查询用户时没有权限报错#I4XTYB
- 模板管理发送消息出现NullPointerException错误#3512
- 刷新页面redis中原有token未过期时会创建一个新token存放至redis中#I4YY7I
- 国产数据库适配异常#3543
- 启动项目在bean初始化之前,报了警告多个PropertySourcesPlaceholderConfigurer重复注入#I50IJ6
- service调用service,代码逻辑缺陷#I52JSM
- Nacos 1.4.1 依然存在权限绕过的漏洞#3507
- 启动报错:Cannot resolve com.sun:tools:1.8.0#3596
- 升级springboot2.6后不支持达梦数据库#I52KAU
- 微信扫码登录,绑定未验证手机验证码,存在安全隐患#3555
- vue2代码生成的vue3代码中,data.ts文件里,componentProps后面少一个逗号#I4ZRF3
为什么选择 JeecgBoot?
开源界“小普元”超越传统商业平台。引领低代码开发模式(OnlineCoding-> 代码生成器 -> 手工MERGE),低代码开发同时又支持灵活编码, 可以帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高开发效率,节省成本,同时又不失灵活性。
- 采用最新主流前后分离框架(SpringBoot+Mybatis-plus+Ant-Design+Vue),容易上手; 代码生成器依赖性低,灵活的扩展能力,可灵活实现二次开发;
- 开发效率很高,采用代码生成器,单表数据模型和一对多(父子表)、树列表等数据模型,增删改查功能自动生成,菜单配置直接使用(前端代码和后端代码都一键生成);
- 代码生成器提供强大模板机制,支持自定义模板风格。目前提供四套风格模板(单表两套、一对多两套)
- 封装完善的用户、角色、菜单、组织机构、数据字典、在线定时任务等基础功能。强大的权限机制,支持访问授权、按钮权限、数据权限、表单权限等
- 零代码在线开发能力,在线配置表单、在线配置报表、在线配置图表、在线设计表单
- 常用共通封装,各种工具类(定时任务,短信接口,邮件发送,Excel导入导出等),基本满足80%项目需求
- 简易Excel导入导出,支持单表导出和一对多表模式导出,生成的代码自带导入导出功能
- 集成简易报表工具,图像报表和数据导出非常方便,可极其方便的生成图形报表、pdf、excel、word等报表;
- 采用前后分离技术,页面UI精美,针对常用组件做了封装:时间、行表格控件、截取显示控件、报表组件,编辑器等等
- 查询过滤器:查询功能自动生成,后台动态拼SQL追加查询条件;支持多种匹配方式(全匹配/模糊查询/包含查询/不匹配查询);
- 数据权限(精细化数据权限控制,控制到行级,列表级,表单字段级,实现不同人看不同数据,不同人对同一个页面操作不同字段
- 在线配置报表(无需编码,通过在线配置方式,实现曲线图,柱状图,数据等报表)
- 页面校验自动生成(必须输入、数字校验、金额校验、时间空间等);
- 提供单点登录CAS集成方案,项目中已经提供完善的对接代码
- 表单设计器,支持用户自定义表单布局,支持单表,一对多表单、支持select、radio、checkbox、textarea、date、popup、列表、宏等控件
- 专业接口对接机制,统一采用restful接口方式,集成swagger-ui在线接口文档,Jwt token安全验证,方便客户端对接
- 接口安全机制,可细化控制接口授权,非常简便实现不同客户端只看自己数据等控制
- 高级组合查询功能,在线配置支持主子表关联查询,可保存查询历史
- 提供各种系统监控,实时跟踪系统运行情况(监控 Redis、Tomcat、jvm、服务器信息、请求追踪、SQL监控)
- 消息中心(支持短信、邮件、微信推送等等)
- 集成Websocket消息通知机制
- 提供APP发布方案:
- 支持多语言,提供国际化方案;
- 数据变更记录日志,可记录数据每次变更内容,通过版本对比功能查看历史变化
- 平台UI强大,实现了移动自适应
- 平台首页风格,提供多种组合模式,支持自定义风格
- 提供简单易用的打印插件,支持谷歌、IE浏览器等各种浏览器
- 示例代码丰富,提供很多学习案例参考
- 采用maven分模块开发方式
- 支持菜单动态路由
- 权限控制采用 RBAC(Role-Based Access Control,基于角色的访问控制)
系统功能模块
├─系统管理
│ ├─用户管理
│ ├─角色管理
│ ├─菜单管理
│ ├─权限设置(支持按钮权限、数据权限)
│ ├─表单权限(控制字段禁用、隐藏)
│ ├─部门管理
│ ├─我的部门(二级管理员)
│ └─字典管理
│ └─分类字典
│ └─系统公告
│ └─职务管理
│ └─通讯录
│ └─多租户管理
├─Online在线开发(低代码)
│ ├─Online在线表单 - 功能已开放
│ ├─Online代码生成器 - 功能已开放
│ ├─Online在线报表 - 功能已开放
│ ├─Online在线图表(暂不开源)
│ ├─Online图表模板配置(暂不开源)
│ ├─Online布局设计(暂不开源)
│ ├─多数据源管理 - 功能已开放
├─积木报表设计器(低代码)
│ ├─打印设计器 - 功能已开放
│ ├─数据报表设计 - 功能已开放
│ ├─图形报表设计(支持Echart) - 功能已开放
│ ├─大屏设计器(暂不开源)
├─消息中心
│ ├─消息管理
│ ├─模板管理
├─代码生成器(低代码)
│ ├─代码生成器功能(一键生成前后端代码,生成后无需修改直接用,绝对是后端开发福音)
│ ├─代码生成器模板(提供4套模板,分别支持单表和一对多模型,不同风格选择)
│ ├─代码生成器模板(生成代码,自带excel导入导出)
│ ├─查询过滤器(查询逻辑无需编码,系统根据页面配置自动生成)
│ ├─高级查询器(弹窗自动组合查询条件)
│ ├─Excel导入导出工具集成(支持单表,一对多 导入导出)
│ ├─平台移动自适应支持
├─系统监控
│ ├─Gateway路由网关
│ ├─性能扫描监控
│ │ ├─监控 Redis
│ │ ├─Tomcat
│ │ ├─jvm
│ │ ├─服务器信息
│ │ ├─请求追踪
│ │ ├─磁盘监控
│ ├─定时任务
│ ├─系统日志
│ ├─消息中心(支持短信、邮件、微信推送等等)
│ ├─数据日志(记录数据快照,可对比快照,查看数据变更情况)
│ ├─系统通知
│ ├─SQL监控
│ ├─swagger-ui(在线接口文档)
│─报表示例
│ ├─曲线图
│ └─饼状图
│ └─柱状图
│ └─折线图
│ └─面积图
│ └─雷达图
│ └─仪表图
│ └─进度条
│ └─排名列表
│ └─等等
│─大屏模板
│ ├─作战指挥中心大屏
│ └─物流服务中心大屏
│─常用示例
│ ├─自定义组件
│ ├─对象存储(对接阿里云)
│ ├─JVXETable示例(各种复杂ERP布局示例)
│ ├─单表模型例子
│ └─一对多模型例子
│ └─打印例子
│ └─一对多TAB例子
│ └─内嵌table例子
│ └─常用选择组件
│ └─异步树table
│ └─接口模拟测试
│ └─表格合计示例
│ └─异步树列表示例
│ └─一对多JEditable
│ └─JEditable组件示例
│ └─图片拖拽排序
│ └─图片翻页
│ └─图片预览
│ └─PDF预览
│ └─分屏功能
│─封装通用组件
│ ├─行编辑表格JEditableTable
│ └─省略显示组件
│ └─时间控件
│ └─高级查询
│ └─用户选择组件
│ └─报表组件封装
│ └─字典组件
│ └─下拉多选组件
│ └─选人组件
│ └─选部门组件
│ └─通过部门选人组件
│ └─封装曲线、柱状图、饼状图、折线图等等报表的组件(经过封装,使用简单)
│ └─在线code编辑器
│ └─上传文件组件
│ └─验证码组件
│ └─树列表组件
│ └─表单禁用组件
│ └─等等
│─更多页面模板
│ ├─各种高级表单
│ ├─各种列表效果
│ └─结果页面
│ └─异常页面
│ └─个人页面
├─高级功能
│ ├─系统编码规则
│ ├─提供单点登录CAS集成方案
│ ├─提供APP发布方案
│ ├─集成Websocket消息通知机制
│─流程模块功能 (暂不开源)
│ ├─流程设计器
│ ├─在线表单设计
│ └─我的任务
│ └─历史流程
│ └─历史流程
│ └─流程实例管理
│ └─流程监听管理
│ └─流程表达式
│ └─我发起的流程
│ └─我的抄送
│ └─流程委派、抄送、跳转
│ └─。。。
└─其他模块
└─更多功能开发中。。
系统截图
PC端
手机端
PAD端
报表效果
大屏效果
欢迎吐槽,欢迎star~
3.1.0 版本发布,基于代码生成器的企业级低代码平台
升级日志
此版本历经两个月的打版测试工作,是一个阶段性重要的稳定版本,重点巩固了vue2版本功能,加强了国产数据库兼容和大数据的支撑
(后续工作会针对vue3开展,vue2的前端进入稳定期)
重点升级
- 达梦数据库深度测试,兼容工作
- Postgres数据库深度测试,兼容工作
- 代码生成器,支持uniapp端列表和表单生成
- 严重安全漏洞修复
- 前端集成qiankun,支持微前端开发
- 新增分库分表示例和分布式事务示例代码
- 前端添加config配置文件,支持打包部署后修改配置
- 进一步重构调整后台接口,vue3兼容工作
- 积木报表、autopoi升级到最新版
- 代码生成器模板升级,增加vue3的支持
- Online报表支持大数据导出,分sheet
- Online表单java增强重构,拆分独立导入增强接口
- 系统管理等基础模块,一系列细节优化
- 反馈的issue问题处理
功能升级
- 添加扫码登录逻辑
- 分类字典导入错误信息处理
- 我的部门系列问题优化
- 通知公告列表查询优化
- 枚举首页设置,支持顺序权重
- 同步到本地的部门,子部门的机构类型不对
- 定时任务功能导出,导出人写死了
- 修复企业微信、钉钉工号同步失败的问题
- 自定义树查询条件查不出数据
- @dict注解支持 dicttable 设置where条件
- 代码生成一对多TAB,时间组件有遮挡
- 升级autopoi版本、解决Log4j2爆雷漏洞问题
- 为了支持模块单独启动,引用system模块的类改成懒加载@Lazy
- 针对接口字典翻译,新增注解方式@AUTODICT
- 树表单功能测试无法删除数据
- 新增示例:表格合计新的写法
- 固定tinymce版本号,解决富文本框JEditor,属性设置下拉选层级显示问题
- JEditableTable,slot新增buildProps参数
- 菜单搜索里点击跳转的菜单,无法将Token信息传递过去
- 通讯录 选中某个部门查询部门人员,想再取消选中查全部,无法取消
- 前端密码控件可以查看密码
- 磁盘监控没有加载效果
- 退出登录体验不好
- 数据规则,选择自定义SQL 规则值无法输入空格
- issues/3331 SQL injection vulnerability
- online单表不允许设置外键给提醒
- online菜单如果配置成一级菜单 权限查询不到
- online报表带参数的菜单配置数据权限无效
- online表单字段db类型,区分年月日和年月日时分秒
- online表单默认字段排序规则改造
- online表单导入,校验不起作用
- Online表单,部门选择、用户选择、多行文本优化禁用效果
- Online表单一对多子表,没有按钮权限
- Online表单一对多tab风格,最大化,高度有问题
- online自定义按钮未激活状态下,sql/JAVA增强列表显示出问题
- Online报表查询 会出现java.lang.OutOfMemoryError: Java heap space
Issues处理
- https://gitee.com/jeecg/jeecg-boot/issues/I4GG21
- https://gitee.com/jeecg/jeecg-boot/issues/I4HW20
- #3159
- https://gitee.com/jeecg/jeecg-boot/issues/I4HZAL
- https://gitee.com/jeecg/jeecg-boot/issues/I4GH9O
- #3126
- https://gitee.com/jeecg/jeecg-boot/issues/I4CMHK
- #3005
- #3162
- #3154
- #3170
- https://gitee.com/jeecg/jeecg-boot/issues/I4IP3D
- #3195
- https://gitee.com/jeecg/jeecg-boot/issues/I4ICIN
- https://gitee.com/jeecg/jeecg-boot/issues/I4K3S1
- #3126
- #3196
- https://gitee.com/jeecg/jeecg-boot/issues/I4JNHR
- https://gitee.com/jeecg/jeecg-boot/issues/I4IFWX
- #3203
- #3225
- https://gitee.com/jeecg/jeecg-boot/issues/I4IRE5
- https://gitee.com/jeecg/jeecg-boot/issues/I4UI2T
- https://gitee.com/jeecg/jeecg-boot/issues/I4KTU1
- https://gitee.com/jeecg/jeecg-boot/issues/I4K3Z7
- https://gitee.com/jeecg/jeecg-boot/issues/I4KW0G
- #3232
- #3245
- https://gitee.com/jeecg/jeecg-boot/issues/I4MBB3
- #3303
- #3297
- #3293
- #3269
- https://gitee.com/jeecg/jeecg-boot/issues/I4O14W
- #3274
- #3311
- https://gitee.com/jeecg/jeecg-boot/issues/I43TB5
- https://gitee.com/jeecg/jeecg-boot/issues/I45C32
- #3312
- https://gitee.com/jeecg/jeecg-boot/issues/I4PW73
- https://gitee.com/jeecg/jeecg-boot/issues/I4P70L
- #3348
- #3347
- #3379
- #3366
- https://gitee.com/jeecg/jeecg-boot/issues/I4RX5V
- https://gitee.com/jeecg/jeecg-boot/issues/I4SWYR
- #3163
- https://gitee.com/jeecg/jeecg-boot/issues/I4I3ZY
- #3391
- #3412
JeecgBoot v3.0版本发布—新里程牌开始,迎接VUE3版本到来
升级日志
迎接VUE3到来的衔接版本,后台为VUE3兼容做了一些优化和升级工作,并彻底重构了Online查询逻辑,支持更多数据库含国产和解决SQL漏洞问题。Vue3.0新版研发工作进入尾声,2022年将是JeecgBoot的VUE3里程碑元年。
严重Bug修复
- Online三级联动组件,列表翻译有问题
- Online表单权限控制页面打开报错 I4E0NO
- Online功能测试详情里的ID隐藏
- Online表单重复rowKey属性定义,导致IE11不兼容
- Online js增强点击无效 #2912
- WebMvcConfiguration升级,后端将long转为string后,导致分页报错和时间类型等问题 #3058 #3057 #3051 #3041 I4BNGY
- 升级mybatisPlus后,多租户插件导致SqlServer兼容问题,sql解析多了一个字段column #2915
低代码升级
- 升级积木报表到最新版本 1.4.0
- 升级代码生成器,支持vue3页面的生成,vue3版本即将出炉!
- 升级Minidao 支持配置多数据源
- 为了VU3新版UI出炉,后端做了兼容性改造(相关请求、代码生成器、生成器模板、权限接口等)
- 重构Online表单、Online报表查询逻辑,兼容更多数据库(包括国产数据库)
- 重构Online表单同步逻辑,兼容更多数据库(包括国产数据库)
- 解决Online表单和Online报表的查询SQL注入漏洞问题
- Online表单java增强新增http模式
- Online表单关联查询问题,只勾选一个附表,结果生成了两个附表的sql
- Online报表配置SQL解析,不支持 “ >= ”
- Online子表增加组件textarea
- Online 用户组件,支持唯一校验
- Online存在服务器目录遍历漏洞,限制只有admin用户才有权限 #3060
- online单表加入外键修改失败问题 I4BXOH I49F81
- Online报表支持安全模式配置,数据源选择在安全模式下为必填
- 【Online表单】修复ERP风格不能保存的问题
- 【Online报表】字典和href互斥
- online表单,附表用户选择组件支持属性 {“multiSelect”:false}
- 前端地域翻译写法简化
- JVXETable新增后台查询三级联动示例
- JVXETable新增多级联动
- ShiroToken验证异常AuthorizationException不能被Spring统一拦截(过滤器异常)I40JKA
- 代码生成器一对多,子表组件支持选择部门、选择用户控件生成
- Online表单支持自定义弹出表单宽度
- 升级Mysql驱动包,解决MySQL JDBC XXE漏洞(CVE-2021-2471)
Issues修复
- Online表单对接积木报表接口参数不匹配问题 #3106 #3072 #2994
- 授权首页菜单后,自定义首页功能不生效 #3069
- 第三方APP消息测试问题 “字段太长,超出数据库字段的长度” 解决方案 #2898
- SQL to parse以后与sqlserver不兼容 #2915
- online java 增强当设置的增强过多时,显示异常 #2880
- online文本太长时,会遮挡页面 issues/I44F0R
- oline在线内嵌子表主表与附表,设置扩展参数限制宽度不起作用 #2881
- online点击详情,出现id,好难看 #2922
- 升级2.4.6后Online表单开发无法使用“一对多”的“ERP主题” I468JY
- JVXETable联动展示与选择BUG #2867
- 2.4.6 钉钉人员同步时手机号未能正确同步 I471XE
- 微服务版集成企业微信单点登录 #2959
- JEditable 下子表 addBefore()方法,在其中自定义调用其他方法不生效如何解决 #2939
- 字段label设置过长被遮盖怎么解决? #3046
- Online表单,两个在线表单tab之间切换,产生多余查询 #3016
- 在线表单功能,内嵌主题“高级查询”按钮权限设置完不起作用 #3020
- 自定义按钮如何选多条数据?? #3032
- online表单用户组件控件类型 支持唯一性校验规则 #2949
- online在线表单加载字典错误导致页面崩溃 #I49F4F
- 在多数据源管理,添加新数据源时mysql5.7和Postgresql冲突 #2918
- 数据库脚本中,sys_dict_item表“数据库类型”的item_value值重复问题 #2914
- JTreeSelect在树结构没有子节点的情况下依然显示展开箭头 #2885
- 扩展配置的弹窗宽度和默认全屏对 内嵌子表 和 TAB主题 无效 I46AQR
- Online报表配置-SQL解析,不支持 “ >= ” #2985
- 同步钉钉人员到本地错误 #2990
- ShiroToken验证异常AuthorizationException不能被Spring统一拦截(过滤器异常)#I40JKA
- 联动组件显示问题 #3084
- 导入定时任务,并不会被启动和调度,需要手动点击启动,才会加入调度任务中 #2986
- Online表单如果是附表,控件类型选项缺少了多行文本、富文本框等 #2948
- 【Online表单开发】移除表单,没有删除关联表数据 #2988
- 省市三级联动列表无法显示 I48I0E
-【2.4.6】在线开发的排序存在打开新页面tab而带前面tab页有点击过排序字段会导致报错 I47FEZ - JEditableTable 表头多选框如何默认选中 I49IE7
- 消息队列中报微服务Feign异常 I49ENE
- Online在线表单保存失败问题 I49F81
- online表单权限控制页面打开报错 I4E0NO
- 附表部门、用户控件有问题 #3088
- autopoi模板导出,赋值的方法建议增加空判断或抛出异常说明。 #3005
- jpopup 表格key重复BUG #3121
- oracle路由网关新增小bug I4EV2J
- Online 存在SQL注入问题 #3075
- online 报表中类型配置为日期(yyyy-MM-dd ),但是实际展示为日期时间格式(yyyy-MM-dd HH:mm:ss) #3042
- online表单,附表用户选择器{"multiSelect":false}不生效,单表可以生效 #3036
- 字典表翻译注解缓存未更新 #3061
- 附表控件类型没有时间控件 I4C854
- online报表查询条件配置了数据字典情况下首次选择下拉框的值,查询后,无法清空查询值 I4C23E
- websocket报错 I4C0MU
- 网关动态更新路由报错 I4C5QR
- 微服务下路由网关删除或禁用某项,仍可以从网关路由到对应的服务中 I47DEM
- 路由网关禁用Demo配置后,系统仍可以通过网关路由到Demo服务。I49457
Online重构兼容数据库
- mysql 、mariadb 、oracle 、db2 、h2 、hsql 、sqlite 、postgresql 、sqlserver
- 达梦数据库 、虚谷数据库 、人大金仓 、南大通用
- Phoenix 、presto 、Gauss 、Firebird、clickhouse 、 OceanBase
JeecgBoot 2.4.6 版本发布,基于代码生成器的企业级低代码平台
升级日志
主要四大方面优化: Online表单功能强化、数据库兼容优化、性能优化、底层依赖升级
新功能升级
- 新增微服务模块 jeecg-cloud-sentinel
- 新增OAuth2登录,支持企业微信和钉钉的静默授权
- 新增在线用户监控,支持踢掉功能
- 支持自定义首页,通过枚举方式配置
- 升级代码生成器兼容更多数据库
- 升级Online报表分页功能,兼容更多数据库
- 升级在线数据源配置,支持更多数据库
- Online表单,支持按用户授权
- Online表单,部门、人员选择组件支持自定义存储显示字段
- Online表单,支持与积木报表对接
- Online表单,支持多字段排序
- Online表单,支持关联查询和关联列表展示
- Online表单,sql增强支持选中多条数据
- 字典拦截器性能优化,将循环查询改造成一次性查询
- @dict 字典翻译时,增加redis缓存
- 进一步优化前端,压缩online js lib减少1M
- 解决IE兼容问题
- 去掉durid广告
- 接口签名密钥串移到配置文件里
- SQL注入漏洞处理
- 查询过滤器,值为逗号、空格报错
- 多租户配置升级
- 工具类hutool缩减依赖,只引用必须模块
- Demo模块默认改成多租户示例
- 代码生成器数据库配置不支持密码加密
- 主键策略修改 IdType.ID_WORKER_STR --> IdType.ASSIGN_ID
- gateway默认走database、增加swagger关闭配置
支持数据库
Online报表兼容
- mysql 、mariadb 、oracle 、db2 、h2 、hsql 、sqlite 、postgresql 、sqlserver
- 达梦数据库 、虚谷数据库 、人大金仓 、南大通用
- Phoenix 、presto 、Gauss 、Firebird、clickhouse 、 OceanBase
Online表单兼容
- mysql 、mariadb 、oracle 、postgresql 、sqlserver 、达梦数据库
代码生成器兼容
- mysql、mariadb、sqlserver、oracle、postgresql、sqlite、polardb、clickhouse、edb
- 达梦数据库、人大金仓数据库、华为高斯、derby
升级底层依赖
- jimureport-spring-boot-starter 1.3.4-beta >> 1.3.78
- autopoi 1.3.2 >> 1.3.5
- jeewx-api 1.4.3 >> 1.4.5
- codegenerate 1.3.2 >> 1.3.6
- mybatis-plus 3.4.1 >> 3.4.3.1
- knife4j-spring-boot-starter:2.0.8 --> 2.0.9
- fastjson 1.2.75 >> 1.2.76
- redisson 3.13.6 >> 3.16.1
Issues修复
- 修改头像modal #2593
- 2.4.5升级后出现后端排序报错 #2639
- JS增强怎么实现点击一个表单的列表页面的自定义按钮弹出另一个表单的新增页面呢?#2580
- 分类字典修改后不自动刷新内容#I3TO07
- JS增强根据条件怎么限制不让编辑和删除呢?#2592
- 列表页面限制删除没效果!限制编辑有用 #I3V547
- online表单中,下拉多选框控件无法查询 #I3N16Y
- 从2.4.3更新后online表单开发,js增强使用beforeEdit方法,编辑点击无效,删除beforeEdit即可恢复 #2647
- DictAspect字典解析性能问题 #I3IB91
- online表单控件 用户选择控件 #2619
- 关于 token 命名问题 #2232
- online表单数据源配置,数据库类型识别错误 #2671
- online表单数据源配置,不支持数据库密码加密 #2672
- 2.4.5前台定时任务无法翻页 #2666
- 部门查询问题 #I3UD06
- 定时任务, 数量超过12个时分页失效 #I3Y1G5
- 多租户服务端对请求头校验 #2598
- JeecgListMixin.js 中loadData没有对request超时做处理 #2584
- 前端用户选择单选无法置空的问题 #2610
- 关于OL排列逻辑的小建议 #1785
- online在线表单新增字段时,焦点不会自动定位到最新行数据 #2511
- 【online表单开发】新增数据库字段时,顺序可否放在ID的后面,而不是所属部门的后面 #1823
- pgsql 数据库 代码生成,配置 之后 取得表是public下面的 #2101
- postgresql 模式问题 #2656
- 数据库改成postgresql后,导入数据库表无法使用 #I3VN62
- online表单中主从表权限相互影响 #2680
- Online 报表配置中,报表SQL语句是多行的时候没法全选SQL语句 #2674
- 自动任务cron表达式生成的问题 #2696
- 2.4.5企业微信中应用中是否可以设置自动登录 #I3Z8SE
- Sign 签名校验失败 #2728
- jeecgboot采用达蒙数据库后,online代码生成模块配置数据库连接无法连接 #2725
- 前端发现BUG #I3ZL4T
- 最新代码在开发环境无法在ie11上打开 #2812
- 关于postgresql数据源连接问题 #2747
- JEditableTable.formTypes.upload组件,显示错误 #2691
- 前端省市县组件太旧了,有部分县区没有维护进去 #I40MGS
- AutoPOI中@Excel注解参数没有 #I3ZE9E
- 已冻结的租户下的用户依然可以登陆 #2796
- 删除租户时,未验证租户是否已被引用 #2795
- JVxeTable用loadNewData问题 #2784
- JS增强,beforeDelete无效 #I42OAU
- IE11打开登录页,无法正常显示,一直转圈 #2841
- 前端省市县组件太旧了,有部分县区没有维护进去 #I40MGS
- 省市区组件内容缺少 #I4074O
- 代码优化和规范(ExcelImportServer.class) #2783
- 多租户安全问题 #2814
- 导入mixins缺少加载中的动画,数据量比较大时,导入进行中没有反应,建议加上this.loading = true进行控制 #I3O4YL
- 根据数据权限前缀获取允许导出的表格字段查询,期望查询是一条数据,应用户有两个角色,查出两个角色 #I3ZKGU
- beforeDelete无效 #2815
- 2.4.5 online内嵌子表,设置按时间范围查询时,日期选择框叠加 #2764
- 请问,online表单设置按钮,绑定JAVA增强或SQL增强,无法多选,只能一次选一条 #2766
- sql增强问题,如果操作多行,例如截图中,多选后,可以激活多行被勾选的数据。 #2743
- 在jeecg中如何使用自定义按钮,选中一行或多行数据后,打印jimu单据,未找到教程,请大佬指点 #2739
- 登录系统,系统管理-系统通告-新增-“标题”处存在存储型XSS #I40W1W
- 钉钉同步到本地的人员没有状态,导致同步之后无法登录 #I3ZC2L
- nacos修改了端口号不生效,启动时候还是默认端口8848 #2819
- 使用autopoi导入提示缺少方法 #2868
- JPopup组件在modal中使用报错 #2729
- 2.4.5 没有用记管理没有同步钉钉功能 I44JE9
- mybatis plus 3.4.1版本 @sqlparser 注解过时,近期有考虑升级到mybatis plus 3.4.3吗? #2840
- 在线报表导出的合计数据与页面上显示的不一致 #2852
- BusinessException能否前端提示异常信息 #I42UOQ
- 第三方APP消息测试问题 “字段太长,超出数据库字段的长度” 解决方案 #2898
JeecgBoot 2.4.5 版本发布,钉钉与企业微信集成版本
升级日志
此版本无缝集成了钉钉和企业微信,实现了用户与部门的同步、公告和系统消息推送支持推送到钉钉和企业微信,快速建立与第三方APP的互通
新功能升级
- 无缝集成钉钉,实现用户和部门同步,公告和系统消息推送支持推送到钉钉
- 无缝集成企业微信,实现用户和部门同步,公告和系统消息推送支持推送到企业微信
- 钉钉和企业微信消息推送,支持普通文本和图文两种类型
- Online新增支持按照部门进行权限授权
- Online导入功能支持校验规则,友好提示成功多少行失败多少行
- Online图表、Online报表、Online报表加缓存,提升低代码性能
- Online popup支持单选和多选设置
- 代码生成器生成popup只支持单选和多选配置
- Online表字典下拉支持异步搜索
- 优化微服务应用下存在表字段需要字典翻译时加载缓慢问题
- 提供新的部门管理列表,支持异步加载数据
- 定时任务支持一个类,开启多个定时任务
- 【页面改造】登录、注册相关代码改成v-model绑定模式
- 【页面改造】其他改造成v-model的代码(常见案例、通讯录、定时任务、校验规则、填值规则)
- 【页面改造】 登录页面拆分重构优化
- JVXETable 支持默认出现输入框选项配置
- 积木报表升级到最新版本
- 查询过滤器,支持多字段排序
- Online报表 sql解析把大写字母变成小写的了,导致查询没有结果
Issues修复
- HW21-0499 表字典接口存在SQL注入漏洞,增加签名拦截器
- online表单数据源配置,数据库类型识别错误 #2671
- online表单数据源配置,不支持数据库密码加密 #2672
- 【gitee/I3HTFI】自定义树控件的表单里的外键直接显示id不显示name
- 解决issue#2639 2.4.5升级后出现后端排序报错
- 自定义树控件在代码生成显示问题 #2507
- redis-cluster集群模式在开启密码时启动报NOAUTH Authentication required错误 issues/I3QNIC
- autopoi增加新属性show=true issues/I3RPDM
- 视图给自定义按钮添加sql增强后,sql语句生效,但再次进入sql增强页面,sql语句无法显示,也就无法修改 issues/I3SP1K
- online,下拉搜索框无法在表单提交页面使用 issues/I1VW3E
- JS增强根据条件怎么限制不让编辑和删除呢? #2592
- redis配置max-active为0后,前端启动时读取不到验证码 #2428
- autopoi导入excel 如果单元格被设置边框,即使没有内容也会被当做是一条数据导入 #2484
- excel 导入时,小数点后的数据会丢失 #2555
- 自定义树控件的表单里的外键直接显示id不显示name的问题issues/I3HTFI
- online在线表单缓存与数据库不一致的问题 #2561
- j-upload 组件无法接收父组件传值 #2529
- cron表达式解析失败 #2569
- 【报表设计器】地图使用静态数据无变化 #2528
- JEditableTable,当 type=popup 时,popup里面的数据排序问题 #2545
- JEditableTable的setValues方法,被赋值的列如果为file、upload类型,会提示找不到当前列 issues/I3OKKH
- JVxeTable组件的拖拽排序功能异常 #2551
- Online内嵌风格子表访问授权问题修复
- Online组合报表无法选择图表(分页问题)
- Online表单同步数据库报错 Could not parse mapping document: null
- Oracle数据库原类型是nvarchar2 但是同步后变成varchar2
- Excel 导入注解name包含下划线抛出空指针异常 #2004
- 用户名称检查有安全漏洞,可以字典猜测破解密码 #2362
- Nginx会忽略租户tenant_id,建议把下划线改成-号 issues/I38V6W
- BindingResult无法使用 #2219
- nacos分组配置问题 #2355
- 积木报表sql数据集,带参条件解析错误 #2306
- 升级2.4.3后,微服务网关路由更新bug issues/I3CNED
- OnLine报表ref属性链接页面,由于在调用页面翻页,导致被ref的页面为空,其实是有数据的 #2315
- 打成jar 使用 -Dfile.encoding=utf-8启动控制台和日志文件乱码 I3AVHC
- 微服务模式部署下,nacos的账户密码如果不使用默认提供的nacos/nacos,会导致gateway读取路由信息失败 #2375
- JImageUpload组件单张无法预览 #2382
- online报表配置如何实现多租户 issues/I3CL75
- 用户管理模块新增、编辑接口事务不一致,会导致脏数据产生 #1812
- FormTypes.popup重复点击会将子表值置空 #2117
- 日志里把具体的文件加上吧 issues/I3BJDQ
- minio上传文件,文件名包含点的时候拼接文件名有问题 issues/I3CLFL
- 一对多代码生成(ERP模板)生成的子表实体ApiModel注释中value为附表名称 #2365
- Online表单无法按部门授权 #2342
- redis监控的token获取了2次不同的值,导致后台报错 #2405
- 关于多租户的数据权限配置问题 #2425
- 打开报表设计器报错 #2438
- 代码生成器导入数据库表错误 #2456
- macOS 环境 SnowflakeIdWorker#generateId 初始化时空指针 #184
- online报表,给某一列设置合计属性后,每页会多出一条空行,导致分页总数合计不对,还会导致ref子页中的数据每页都加一个空行 #2390
- 内嵌子表导入异常 issues/I3ESNH
- JEditableTable 查看时,内容过长显示有问题 #2435
- JEditableTable 当 type: FormTypes.popup,时 能不能向组件内传参数 issues/I3BXH3
- 配置minio上传,遇到没有后缀的文件名会报错 #2434
- JVXETable在列表popup是否支持传参? issues/I3J1UY
- 通过扩展参数设置popup是否支持多选,Jpopup.vue未使用扩展参数issues/I3IA7Z
- ONLINE表单 修改添加 没有数据的时候,sql异常 issues/I3HTON
- online表单开发查询配置下拉搜索框,placeholder会出现‘请选择qq’ #2500
- JVXETable获取当前行,row参数出现undefined #2501
- online 表单,选中行,操作后,选中行让然存在,需要手动点清空issues/I3FLJ3
- 不支持mariaDB数据库,近期会考虑支持吗issues/I3QID1
- 文件上传建议可根据当前业务类型分类文件 #2531
- 提交一个在线代码生成的bug issues/I3EL13
- 账号安全问题 #2449
- 请教为什么要限制同个任务类名 #2460
- JDictSelectTag选择后不能触发验证 #2472
- 附件下载的文件报400 issues/I3NQQW
- 代码生成树表haschild存在问题,为什么不在add时就给haschild赋值为0 #2558
JeecgBoot 2.4.3版本发布,企业级低代码平台
升级日志
此版本为优化易用版,重点重构了前端和代码生成器模板,将Form升级为FormModel支持双向绑定简化前端;另外优化了微服务的使用模式,提供简易机制,进一步降低了微服务的使用难度;
前端升级
- 重构前端大部分页面,将表单升级为FormModel模式(涉及常见案例、系统管理等)
- 重构代码生成器全部模板,生成的表单默认为FormModel模式
- 新增示例:一对多JVxeTable
- 新增示例:JVXETable 省市县联动
- Online表单,高级查询按钮布局问题
- Online视图,恢复支持JS增强等功能
- 登录密码错误修改验证码
后台升级
- 进一步简化微服务开发模式,提供一系列的简易工具
- 单体和微服务 docker compose 脚本优化
- 代码生成器的数据库配置,改造默认走平台的配置
- Excel多sheet导出导入例子
- 升级autopoi到1.3版本,poi升级到4.1.2
- 升级jimureport到1.2.1-RC版本,低代码报表优化
- 提供单体和微服务模块自动创建骨架archetype
- 登录后清除redis中验证码
- 重复check接口,sql注入检查
- 代码生成器,开关组件进一步优化
- 积木报表支持系统变量
- Excel图片导出报错,本地upload情况下,ImageBasePath未设置
- TomcatServletWebServerFactory重复注册问题处理
- 支持达梦数据库
- 取消jeecg-boot-starter-redis模块,合并到core中
- 消息推送采用redis发布订阅模式,支持集群
- nacos server本地化采用jar方式启动,简化开发省掉nacos的安装
- 删除jeecg-cloud-example,合并到jeecg-cloud-system-start
- 修改xxljob执行器默认端口,防止默认9999端口冲突
- 集成xxl-job-2.2.0之后,注解没有删掉,导致启动报端口冲突
- 进一步优化重构分布式锁
- 新增几个单元测试类
Issues处理
- Excel 导入注解name包含下划线抛出空指针异常 #2004
- 导出图片到Excel,按照官方文档,导出报错 #1811
- 账号登录安全问题 #2207
- excel 导出分隔符问题 #1126
- 模板导出功能,#fe: 横向遍历怎么用不了呢 {{#fe:maplist t.xxx}} 是这样格式吧? #2139
- Autopoi的@Excel注解 disctTable、dicCode dicText 导出解析不成功 #2158
- SQL注入漏洞 #2201
- 建议优化Online表单开发代码生成器不能成功生成代码的错误日志 #2234
- 积木报表API请求获得不到查询条件 I2NXEV
- 字典导入window下能可 linux部署得环境下出错 I35AUG
- 绕过验证码漏洞 #2227
- pop选择器列主键问题 I29P9Q
- 最后一页中分页删除问题 #2239
- 集成xxl-job-2.2.0之后,注解没有删掉,导致启动报端口冲突 #2228
- 常见案例=>JVXETable示例(NEW)=>普通示例页面下高级示例 前端页面报错误! #2134
- 在数据库 mysql8.0.15 上报错 #2268
- 微服务Feign调用Provider报错Token为空的问题 #2263
- 教程里关于feign调用拿不到token的问题 #2244
- swagger密码访问不生效 #2253
- online报表中字段类型为长整形时,合计的显示能否不加.00,数值类型的时候加上.00 #2279
- feign 动态创建client,拦截器执行多次 #2275
- 有个小Bug I3854N
- feign调用 500错误 I37PFB
- 微服务化后-cloud-demo项目导出无法和字典关联 I37PNL
- FeignConfig重复 #2286
- 部门管理员添加上级用户时缺失负责部门列 I2SDU1
- 批量导入部门以后,不能追加下一级部门 #2245
- 关于测边菜单遮挡内容问题详细说明 #2255
- 屏幕适配 #2224
- Online表单开发功能,附表外键配置非主表主键问题 #2281
- 用online报表配置设计的报表,每页会多出一条空行,导致分页总数合计不对 #2242
- 数据量大时导出不能自动分批 #2243
- 部门表太大导致的问题 #2204
- 请求url里面带分号,绕过token校验 #2256
- 字典【是否启用】按钮会错误的保存状态 #2311
- 微服务部署下代码生成失效,单体模式下代码生成可用 #2324
- system服务和demo服务有办法同时使用xxl-job吗 #2313
- PermissionDataAspect.filterUrl() 方法有代码bug #2325
- 省市区组件无限递归 #2335
JeecgBoot 2.4.2 积木报表版本发布
升级日志
此版本为深度测试版本,历经一个月的集中测试,主要修复已知bug和强化功能,重点升级了代码生成器、集成了积木报表,提供在线报表设计工具。积木报表: http://jimureport.com/plan
代码生成器升级
- 数据库兼容性深度测试、简化生成代码、丰富组件的支持
- 支持自定义树生成组件生成
- 支持高级查询的下拉多选、下拉搜索的生成
- 在oracle下代码生成报错处理
- ERP风格 子表配置唯一校验,输入时报错
- 一对多代码生成,子表未清空子表数据(导致数据混乱问题)
- 支持更多校验规则生成
- 大字段Blob类型支持强化
- 简化生成的VUE代码,自定义组件改成全局注册
- 生成目录选择缓存失效问题
后台功能升级
- 集成了积木报表JimuReport
- 重构分布式锁模块
- 升级minio版本到8.0.3
- 升级autpoi版本到1.2.5
- 解决第三方登录justauth新版依赖 okhttp版本冲突--
- 上传文件名中文转字母逻辑删掉
- 支持逗号的等于查询 如(下拉多选)
- SpringBoot监控请求Httptrace不见处理
- sysUser中rel_tenant_ids为空时,可能导致MybatisPlusConfig中出现空指针异常
- 【高级查询】 oracle 日期等于查询报错
- 导入Excel校验类FieldPresenceUtil 迁移到autopoi中
- 【单元测试】新增几个单元测试类
- 消息推送Websocket加入redis发布订阅功能,支持集群
- 字典数据值维护功能,添加重复校验
- sys_gateway_route表字段persist 命名不规范修改
- 【分类字典】子节点全部删除后,父节点仍然显示+ 点开后无子节点问题
- 日志保存失败,导致业务操作也失败问题
- 多数据源配置,多增加了几种数据库类型
- 职位功能导入失败处理
前端UI升级
- 删除无用的组件,简化代码
- 自定义组件改成全局注册,省去了组件手工引入
- 升级ant-design-vue到最新1.7.2
- CardList列表加载不出来处理
- 消除路由编辑界面添加path报错
- 用户编辑头像为空的情况下,无法改头像
- 系统公告,查看均可编辑保存成功修改
- 上传组件样式问题修复
- 数据字典禁用和正常区别开,添加背景颜色
- 退出登录清空缓存的用户信息
- 【严重问题】首页的系统设置没了
- 省市区组件导致切换页面浏览器报错
- 唯一校验为空页面出现异常代码问题
- popup支持带逗号查询
- 下拉搜索性能优化,支持指定页数查询
- 高级查询popup支持多选
- JVxeTable匹配删除按钮权限控制报错
- JVxeTable新增组件 选择用户选择部门
- 字典常用js方法改成全局注册$initDictOptions$filterMultiDictText$filterDictText$filterDictTextByCache
- 错误处理Error in render: "TypeError: Cannot read property 'style' of undefined"
- 首页风格,暗黑风格还原
低代码功能升级
- Online表单一对一支持设置默认值
- Online表单提交之前新增 beforeSubmit方法
- Online功能测试,行编辑组件默认换成JVxeTable(支持切换)
- Online视图支持唯一校验规则
- Online视图去除增强配置按钮
- Online 树形列表支持滚动条
- Online功能测试数据默认排序改成id
- Online popup支持翻页多选
- Online文件上传上传失败提示并删除无效预览
- 【Online表单】校验字段-验证规则 6-16位数字实际可输入18位数字 单表及行编辑
- 【Online表单权限】行编辑的问题,一对多子表,子表'新增' '删除' 按钮未控制
- 【Online】sql增强 java增强配置页面修改成列表方式
- 【Online】行编辑组件JVxeTable, 日期、时间控件长度修改
- 【Online】报表排序bug优化
- 【Online】树形列表bug修改后,还是显示原来值 暂时去掉缓存
- 【Online】表单行编辑组件,支持选择人、选择部门等组件
- 【Online报表】sqlserver下配置oracle多数据源,时间查询报错
Issues处理
- 【online】2.4版本更新后子表onlChange方法不生效 #2059
- Jackson配置WRITE_NUMBERS_AS_STRINGS 之后,页面崩溃,精度丢失问题没法解决 #2075
- 2.4Redis工具存入key,value取不出来 #2071
- 2.4 表单js增强 主表修改子表无法进入return语句块中 issues/I2818V
- 代码生成器bug反馈 issues/I256ZE
- online表单生成视图超过2个报错 #2080
- 前端增加用户模块 密码的校验规则没有生效 #2063
- 2.4在线表单导入配置java增强,不会抛出异常,即使导入不成功也不会。 #2070
- 注册用户总是提示“手机验证码错误” #2081
- 当用户单租户多部门时存在未setTenant的BUG #2053
- 设置菜单消失 #2079
- 2,4版本问题如果url中有包括中文(已编码),就报400 Bad Request #2069
- j-search-select-tag 使用下拉搜索框 加载字典数据 因数据太多 选择点击时 慢 甚至卡死 请求优化方案 #1924
- popup多行错位 #2093
- 列表自定义项,弹出的popover会随columns的个数及title长度而不合理地变宽 #2030
- 生成的表单复制到项目内,如果菜单配置为一级菜单后,各一级菜单切换时,页面刷新有问题 #1843
- 首页点击其他菜单跳转页面时,2个页面会出现同时出现的问题 #1893
- 附表如何添加部门、用户等基础资料的选择 #2118
- MySQL 8 persist关键字问题报错 #2140
- 于SpringBoot 请求参数包含 [] 特殊符号 返回400状态 #1795
- 上传图片报错 #2090
- 正式环境Redis的keys问题 #1778
- 高级查询组件中无法关闭popup #2099
- Online控件默认值表达式 使用 系统上下文变量 有bug issues/I28TH9
- 代码生成器 生成的一对多表单关闭modal 后没有重置子表数据 点击新增后 会显示上一次编辑的表单数据issues/I29E6M
- hutool包冲突 issues/I2CFAS
- 后端省市区ProvinceCityArea读取json文件bug #2179
- 系统通知,报错 #2153
- 2.4版 jeecg-boot-module-demo下的SampleTest测试运行不起来 #2216
- 建议sys_gateway_route表字段persist修改一下 issues/I281X6
- online 代码生成的vue页面和online功能测试中的不一致。在功能测试中商品分类是树状下拉框,生成代码后变成input框了。 #2044
- 列表自定义项,弹出的popover会随columns的个数及title长度而不合理地变宽 #2030
- 2.4版本在线生成主附表 生成有误 issues/I29ZGO
如果你是老版本JeecgBoot,也需要积木报表,可以手工集成 ,参考文档 http://report.jeecg.com/2078875
JeecgBoot 2.4.1 版本发布,基于SpringBoot的低代码平台
严重问题
- 系统设置菜单消失 #2079
- 2,4版本问题如果url中有包括中文(已编码),就报400 Bad Request #2069
- 解决前端增加用户模块 密码的校验规则没有生效 #2063
- 解决QRTZ_*表区分大小写的问题
- 通知公告发送指定人,admin收不到信息
- 解决SqlServer下online表单普通同步,会删除了表,未保留数据
- gateway路由采用database方式加载,失败问题解决
- 解决oracle数据库,代码生成报错的问题
- 解决性能监控(请求追踪、tomcat信息)菜单,打开报错的问题
升级代码生成器
- 支持自定义下拉树的生成
- oracle下 三级联动配置了,导致生成报错
- 高级查询支持下拉搜索和下拉多选
- 树表单支持更多的控件生成
其他问题
- 单体和微服务启动类,加注释说明
- system微服务启动类更名,方便区分单机和微服务
- 解决2.4版本JVxeTable更新后子表onlChange方法不生效 #2059
- 上传文件中文文件名转为拼音、Long类型精度丢失问题 issues/I24KXI、达梦数据库兼容修改
- demo示例设置展示列效果优化
- Failed to execute 'getComputedStyle' on 'Window
- 字典明细禁用样式
- 上传图片组件大小不一致问题
- 注册用户总是提示“手机验证码错误” #2081
- 接口测试支持更多请求方式
- 菜单删除确认按钮样式变形问题
- 示例模板优化TableInnerEditList.vue
- 当用户单租户多部门时存在未setTenant的BUG #2053
- 增量升级脚步语法错误修复
JeecgBoot 2.4 微服务正式版发布,基于SpringBoot的低代码平台
升级日志
此版本重构很大,重点升级了微服务模块,完善了微服务所需的各个组件,实现了微服务方案落地( 新版可一秒变微服务);
同时代码生成器也做了重点升级,更加智能;
另外后台所有请求统一了前缀,代码重构较大、
前端代码目录和启动模式也做了较大修改,
所以升级会出现不兼容情况,请注意!!!
单体切换为微服务文档 2.4+ http://doc.jeecg.com/2043906
微服务升级
- 升级SpringCloud到Hoxton.SR8版本
- 升级SpringCloudAlibaba到2.2.3.RELEASE版本。
- 提供更简单的微服务和单体切换机制,1秒切换。
- 提供丰富的启动Starter:xxl-job分布式定时任务、Redisson分布式锁、rabbitmq消息队列、消息总线等
- 路由网关升级:支持三种模式加载路由配置(yml、nacos、database)
- 路由网关升级:支持熔断/降级/限流全局配置
- 配置中心升级:默认采用nacos作为配置中心,简化配置
- 提供服务监控模块
- 提供微服务示例代码模块
- 路由配置界面换了新界面,操作更方便
代码生成器升级
- 支持默认值生成
- 支持高级查询的生成
- 支持禁用状态(只读)生成
- 支持上传图片和上传文件控制数量
- 支持表单列数设置生成
- 默认单表、一对多、树支持详情页面的生成
- Online popup支持翻页多选
- 支持开关控件的生成
Online低代码升级
- Online报表支持合计功能
- Online报表支持多表头设置
- Online表单导出支持高级查询
- Online表单同步数据库,支持数据库密码加密
- Online表单上传文件图片控件,支持上传个数设置
- Popup组件,支持编码方式传递动态参数
- Online表单功能测试,行编辑表格换成JVxeTable提升性能
- Online报表配置界面,换成JVxeTable提升性能
- Online表单恢复大组件(富文本、MD编辑器、代码编辑器)支持
- Online表单依赖JS进一步压缩变小
平台架构升级
- 前端改造成多环境配置(启动配置模式变了)
- 前端代码目录结构做了调整,代码更清晰易懂
- 在线swagger文档换为knife4j,UI更漂亮功能更强大
- 在线数据源和平台数据源,密码支持加密设置
- 第三方登录做重构,支持一个用户对应多个第三方账户
- 重构请求,system模块所有请求统一以/sys/开头,demo模块统一以/mock开头
- 系统框架中的安全漏洞问题加强
- 升级底层依赖
- springboot => 2.3.5.RELEASE
- mybatis-plus 3.3.2 => 3.4.1
- druid 1.1.17 => 1.1.22
- jwt 3.7.0 => 3.11.0
- shiro 1.5.3 => 1.7.0
- fastjson 1.2.72 => 1.2.75
- mysql-connector-java 8.0.20=>8.0.21
- dynamic-datasource-spring-boot-starter=> 3.2.0
- autopoi => 1.2.2
Issues处理
- 谷歌浏览器,JEditableTable输入校验提示框位置偏移 #2005
- 同步数据库,对于一些关键字的表名 实际并没有创建成功 #1977
- 选择部门弹出框超出屏幕 #1995
- 【BUG】两个online报表之间跳转。排序后排序条件未清空造成报错 #1822
- JEditaTable,子表默认添加一条数据,addDefaultRowNum设置无效 #1930
- AutoPOI(Excel工具)一对多导出needMerge 有某条数据对应数量小于2时报错 #1840
- Excel导出断点查了到的是一个date类型的字段(XXtime)没有赋值 issues/I249JF
- 一对多导出报错 issues/I1YH6B
- 省市区组件校验必填配置无效 #1902
- Long类型精度丢失问题 issues/I24KXI
- online下拉多选框,搜索时只字典code进行搜索不能通过字典text搜索 issues/I1WMHB
- 组件 JSelectDepart.vue不是默认id时新内容编辑问题 issues/I247X2
- 控件默认值是“#{sysUserName}”,但是功能测试时控件没有默认值issues/I1QEMS
- ERP模板界面,如果超时,点击重新登录,无法跳转到登录界面issues/I1PQ0W
- 在线表单开发中数据表的某一字段的默认值设为#{sysUserName}时,无法获取到值。issues/1639
- 控件默认值#{sysUserName}无法显示issues/1544
- Online表单开发,点击“新增”按钮,是否树:选择是,页面控制台报错 issues/I1BHXG
- 2.2.1的ERP模板不可用 issues/I1OAM9
- 关于在线开发中的表单开发和报表配置的问题issuse/I1NV8M
- Bug:2.2.1版本 Online排序功能失效issues/1450
- 下载最新开源代码,本地测试,online表单开发,勾上“是否排序”,页面无排序功能issues/I1N6Z1
- controller方法参数列表中带有HttpServletRequest类型参数,执行完成后,保存日志报错issues/1394
- Bug:如果请求参数有request,@autolog自动日志 会报异常issues/1413
- radis缓存未更新 导致 修改主表,子表关联数据未更新issues/1436
- 登录登出日志没有记录人员issues/I1NBZO
- Online表单开发,建议增加时间控件issues/1362
- online前端模板变量有误issues/1470
- 内嵌子表单显示字段越多,多选框及其序号宽度也会增加issues/1442
- 建议:优化架构issues/1377
- 自定义组件,建议支持多条件查询issues/1433
- popup多选的问题issues/I1OERG
- components文件夹Table组件showPagination参数问题issues/1467
- 富文本组件在tab页面切换的时候失效issues/1462
- 定时任务调用 SysBaseApiImpl.addLog 记录日志报错issues/1472
- 建议升级shiro依赖 Apach Shiro官方披露其cookie持久化参数rememberMe加密算法存在漏洞issues/1473
- Apache Shiro权限绕过issues/1516
- 优化建议:/thirdLogin/{source}/callback 接口在签名校验失败时返回失败的标识码issues/1441
- online表单如何指定字段进行排序 或是否支持多个字段进行排序 issues/1411
- 子表怎么修改控件长度issues/I1P2UM
- JEditableTable.vue卡顿原因之一buildPropsissues/1177
- JEditableTable 用 slot的形式绑定一个JTreeSelect 如何实现双向绑定issues/984
- 谷歌浏览器开发者模式下,点击屏幕调试后左侧菜单栏收起,且折叠图标失效issues/1584
- 前端问题issues/1602
- 漏洞:其他部门可以新增管理员角色issues/1538
- jar 包上传到服务器后 autopoi 读取不到excel模版文件issues/1505
- 左侧菜单栏缩放窗口后无法显示issues/1498
- 怎么对表格和编辑表格的表头进行自定义样式修改issues/I1RBGF
- online-导入数据库表issues/I1R43G
- 顶部导航,偶尔会无法显示收起按钮issues/I1FKIP
- side menu响应式有bugissues/1619
- 高级查询构造器条件值是下拉框并且下拉框项目较多时检错报错issues/1517
- 自定义控件: j-image-upload 问题issues/I1PRAE
- 数据权限为,单位A到Z的人员只能增删查改自己单位的录入的数据,单位A到Z的上级甲可以查看单位A的数据并修改。sys_org_code会更新到更新人所属部门issues/I1PRTU
- 支持自定义sql 查询条件 引入#{sys_user_code} 等用户查询条件 能否匹配上权限数据issues/1547
- 配置数据权限为包含时,条件为多个时,sql语句报错issues/1541
- 【bug】postgresql 查看已删除用户类型错误issues/1642
- 前端切换标签不会保存原有状态及数据issues/1369
- 导出excel实体反射,时间格式转换错误issues/1573
- 表单开发页面bugissues/I1RMJA
- 加入多租户管理后数据表无法正常更新issues/1640
- 表单主附表设计issues/1481
- 配置字段href,跳转页面issues/I1QP0Y
- excel中的数据使用函数计算的列导入报错 Cannot get a text value from a numeric formula cell.issues/I1QDHN
- 如果进行在线表单开发的一对多对多的设计?issues/I1PEB2
- 登录页面错别字issues/993
- 在线文档中不能支持对List的入参 issues/1246
- online表单开发 填写表明时只要数据库中有一个库中存在这个表就会提示表名已存在issues/I1TWWK
- online 表单开发 表明已经存在issues/I1TWOO
- Online表单开发,普通同步报错issues/1565
- Online表单开发(表名已存在)issues/1665
- 前端页面放开个人页后console报错issues/1577
- 跨域问题issues/I1TAAP
- eidtTable的值改变事件issues/I1N3H1
- 2.2.1版本bug,默认主题父子表生成的代码,如果先点击编辑,后点击新增,新增页面明细上会有之前编辑页面上的数据issues/1454
- JS增强获取表单字段为undefinedissues/1388
- 表格合计功能bug[issues/1399](#1399 "issues...