Jeecg Boot Versions Save

🔥「企业级低代码平台」前后端分离架构SpringBoot 2.x/3.x,SpringCloud,Ant Design&Vue,Mybatis,Shiro,JWT。强大的代码生成器让前后端代码一键生成,无需写任何代码! 引领新的开发模式OnlineCoding->代码生成->手工MERGE,帮助Java项目解决70%重复工作,让开发更关注业务,既能快速提高效率,帮助公司节省成本,同时又不失灵活性。

v3.5.1last

11 months ago

日期:2023-06-06

日志:3.5.1 版本修复一些bug的最后版本

v3.5.1

1 year ago

升级日志

小版本升级,修复一些已知bug、文档聚合重构和升级spring漏洞问题。

ISSSUE处理

  • 省市区组件JAreaLinkage数据不回显 #382
  • 新增通知公告提交指定用户参数有undefined #289
  • 角色管理的权限配置,保存首页配置提示出错,经过排查发现是SysRoleIndex 类没有无参构造函数 #4594
  • 树开表单列的字段如果带着下划线会导致生成的 *mapper.xml 中 SQL语句出错 #4649
  • 生成的代码条件里时间选择器有问题 #417
  • 租户用户编辑会导致重复添加一模一样的数据 #4747
  • 用户租户表(sys_user_tenant)未做唯一性约束,会造成多次添加默认租户 #4698
  • 下拉搜索框问题 #286
  • springCache中的清除缓存的操作使用了“keys”。 #4358
  • 修复356时候引入的回归错误 JPopupOnlReportModal.vue 中未修改 #426
  • 部门全部勾选后,点击确认按钮,部门信息丢失 #4646
  • jeecgboot-vue3中选择用户时,开启右侧列表后,在右侧列表中删除用户时,逻辑有问题 #424
  • JDictSelectTag组件使用时,浏览器给出警告提示:Invalid prop: type check failed for prop "onUpdate:value". Expected Function, got Array... #4507
  • 所属部门树操作全部勾选不生效 #394
  • 微服务之间调用免Token方案的问题 #4683
  • 使用online表单开发,代码生成选择vue3原生以后,界面导出的功能不能使用查询条件了 #425
  • 文件上传问题 #4672
  • oConvertUtils 里面判断字符串为空的方法有问题 #292
  • 分类字典数据量过多会造成数据查询时间过长,显示“接口请求超时,请刷新页面重试!” #4550
  • 在表单中使用v-model:value绑定JSelectDept组件时无法清除已选择的数据! #397
  • autopoi导出带副标题的数据表,副标题缺左边框 #4342
  • 弹出页面出现自动吸顶,无法移动和显示头部。 #430
  • auto-poi 1.3.6 导入2007 xlsx 格式失败, 导入2003 xls 格式正常 #4225
  • 暗夜模式不完整,有bug #448
  • online在线表单(一对多),对子表记录进行新增或编辑时,无法获取到表单信息 #4655
  • JImageUpload及JselectUserByDept的小扩展 #452
  • 上传组件传入accept限制上传文件类型无效 #455
  • 新建用户会自动分配角色 #454
  • autopoi-web 导入图片字段时无法指定保存路径 #4415
  • popup弹出框使用j-editable-table 缺失行数据 #4798
  • 能修复一下 vue-print-nb-jeecg 打印预览checkbox,radio会自动全部勾选的问题 #4416
  • online表单频繁点击导出,引起内存溢出 #4523
  • JVxeTypes.hidden 不能赋值 #423
  • 给用户配置多个租户,多个部门,登录的时候没有提示选择租户和部门 #453
  • BaseTable导出功能没有按排序结果导出 #409
  • sys/duplicate/check SQL注入 #4737
  • vxe-table提示信息没有随着高度响应 #461
  • eslint 8.13.0 版本在idea中报错 #395
  • online表单频繁点击导出,引起内存溢出 #4523
  • 升级到3.5.0之后无法连接到Redis,3.4.3是可以的 #4817
  • Spring Framework身份验证绕过漏洞(CVE-2023-20860) #4824
  • gateway读取nacos路由配置有bug,附修复方法 #4762
  • 3.4.3版本 如何指定nacos命名空间,以前是在pom里,现在是需要手动增加配置么 #4743

v3.5.0

1 year ago

升级日志

【重要升级】VUE3版本大升级,此版本改造较大,重点重构了租户逻辑,目前已支持一键切换系统管理模块的租户隔离。 注意vue2版本不兼容此版本的后台代码,使用vue2版本的同学,先不要升级后台。

升级SQL

改动太多,见链接

不兼容改造

  • 租户进行了大重构,所有的系统表都加入了租户ID字段
  • 用户与租户的关系采用中间表
  • 租户Header中的租户KEY命名改为:X-Tenant-Id
  • 系统模块敏感接口加了权限注解,需要授权才能访问接口

重构很大内容

  • 租户大重构,可以实现系统模块一键saas切换,无需自己二开改造。
  • 增加乐观锁设置和示例
  • 系统模块的所有表都增加租户ID字段

UI大升级

  • 提供新版登录界面
  • 提供新用户选择控件,更好的体验支持通过部门、角色多维度选人
  • 提供职务选择组件、角色选择组件、范围时间控件
  • 提供用户头像组件
  • 提供在线用户功能
  • 租户管理页面改造,支持租户套餐维护功能
  • 提供新版用户设置功能
  • 新增一个租户角色功能菜单
  • 代码生成器模板优化

ISSSUE和一些小处理

  • 首次登陆时,用户租户id未正确赋值 #260
  • RangePicker控件,第一个begin获取不到值,第二个值end取了第一个值 #268
  • 建议JUpload组件,disabled为true的时候上传button能够变灰或者其他样式图案,便于知晓无法再点击上传。 #4250
  • jeecg-boot3.4.4 存在sql注入漏洞 #4393
  • Spring Framework RFD漏洞(CVE-2020-5398) #4457
  • https://github.com/jeecgboot/jeecg-boot/issues/4487
  • 多租户情况下,切换用户登录,提示错误。 #4509
  • 部门管理模块增加多租户功能。新增数据,db中sys_depart,tenant_id为0 #4505
  • 【BUG】--数据源管理-新增数据源未返回正确结果 #4294
  • useForm的getFieldsValue将数组转成字符导致无法读取上传文件 #4330
  • 【BUG】最新版jeecgboot的auto-poi版本错误,导致excel导入有表达式的情况识别异常 #4328
  • 下拉列表框字段字典table加条件后搜索区域的字典没加载进去 #4306
  • Online表单主子表单下拉多选无法搜索 #271
  • 前端-jeecgboot-vue3 3.4.4版本,BasicTable高度自适应功能失效,设置BasicTable组件maxHeight失效; 原因已找到,请看详情 #355
  • 在线报表分页有问题 #356
  • 开启多租户时同个浏览器切换账户,使用的还是同一个租户ID #4349
  • VUE角色授权重复保存 issues/352
  • 代码生成时判断del_flag存在自动生成逻辑删除代码[issues/4196]
  • 原生表单内使用图片组件,关闭弹窗图片组件值不会被清空[issues/248]
  • 列表页查询框(日期选择框)设置初始时间,一进入页面时,后台报日期转换类型错误的 issues/215
  • 用户管理同步企微无用按钮去掉
  • 警告错误处理【<Suspense> slots expect a single root node. Vite&Vue】
  • 【代码生成】原生 jvxe 表单新增时 一对多子表不显示,导致表单保存不了
  • 【代码生成】erp模式 一对一,可添加多条数据
  • 【代码生成】Tab风格 一对多子表校验不通过时,点击提交表单空白了,流程附加页面也有此问题
  • 给部门表加个是否有子节点,提升性能
  • 钉钉对接https前缀问题【issues/I5WRIN】
  • header中租户key命名不规范由tenant-id改成 X-Tenant-Id
  • BasicTable高度自适应功能失效,设置BasicTable组件maxHeight失效
  • ERP示例修改
  • 钉钉发送消息失败的问题 #4499

v3.4.4last

1 year ago

日期:2023-03-04

日志:3.4.4 版本修复一些bug的最后版本

v3.4.4

1 year ago

升级日志

修复了系列bug,进一步保障现有版本的稳定,vue3做了vite3升级,低代码模块新增亮点功能。

一、Vue3前端问题修复

  • 切换pnpm安装依赖
  • 升级到vite3
  • 系统UI美化
  • 图标本地化,内网也不影响图片渲染
  • 修复在消息中心,信息模板中编码为空提示重复问题
  • 修复Antd3升级问题,导致所有功能表单的下拉搜索框搜索无效issues/218
  • 修复Antd3升级问题,导致表格分页选择失效 issues/4185
  • 【重要性能问题】解决点击online功能测试,重新加载首页问题 issues/I5XBZF
  • 字段校验问题,一进入表单就校验
  • vue3 最新版 online报表 参数不生效
  • 必填的form的validate校验反过来了issues/4189
  • 所有功能表单的下拉搜索框搜索无效issues/218
  • JDictSelectTag选择显示有问题issues/226
  • JSelectMultiple搜索问题issues/227
  • "version": "3.4.3" 换肤功能无效issues/236
  • online表单开发,没有数据,提示token失效issues/4132
  • vue3版本,online在线表单,新增页面无法显示联动控件issues/4008
  • 部门管理员能获取系统全部角色issues/4122
  • v-deep报警信息issues/143
  • clearSubRows时报错TypeErrorissues/166
  • online表单开发代码生成选择Vue3风格,生成的代码却是vue2的issues/4151
  • GUI代码生成器issues/4150
  • basic table 增加伸缩列issues/185
  • basic table 增加伸缩列issues/I5571O
  • online表单-数据库属性,字段拖拽排序时,无法成功。issues/191
  • 前端启动报类型找不到issues/200
  • online表单生成的预览之后放在菜单表单里面不可以用issues/201
  • 打包到服务器上,定时任务点“立即执行“报错issues/204
  • online开发,使用部门选择组件时,多个默认参数时,仍然有问题。点击“确认”按钮,没反应issues/4166
  • 列设置功能不能拖拽列issues/181
  • 下拉搜索,使用动态字典,在线页面不报错,生成的代码报错issues/183
  • 配置聚合路由的地址时,报系统已存在该值的错误。issues/176
  • 平台用户登录失败锁定用户issues/4109
  • VUE3 3.4.3版本 online报表参数无效issues/225
  • Online JTreeSelect控件changeOptions方法未生效issues/4173
  • online在线表单生成,附表形式表单没有联动组件或省市区组件issues/194
  • JFormContainer组件禁用时无法下载文件issues/224
  • 用户编辑中所属部门与负责部门不显示部门名称,只显示departIdsissues/163
  • ERP风格下列设置问题issues/127
  • online代码生成Tab风格,新增数据中的字表tab页面错乱issues/4117
  • 配置下级菜单为隐藏路由后,二级菜单无法点击,并且显示了三角符号issues/4013
  • online报表可以实现用“张 ”来模糊查询而不是“张* ”issues/I5VC3M
  • 部门选择组件中,在online中多个扩展参数时,存储字段变更为部门编码时,表单无法实现issues/I5V6L3
  • online报表字典配置列使用sql字典形式不能实现下拉框issues/I5JCIV
  • 空指针异常issues/I5M2QM
  • 在线表单时间组件条件样式问题issues/I5RWTV
  • 菜单问题issues/I5JJTL
  • 带参数的路由菜单点击右上角刷新报错issues/I5VXTW
  • RangePicker日期选择器异常issues/I5X0J0
  • 新版本打开online功能测试重新进入平台issues/I5XBZF
  • Online表单开发自己录入的属性保存不了issues/I5W9BW
  • 用户管理权限部门很多全选保存后导致编辑按钮消失issues/3972
  • BasicTable 调用插入函数 默认插入两条记录issues/136
  • JVxeTable默认行数无效issues/4019
  • 标签页样式更多下拉显示样式错乱问题issues/169
  • JEditableTable组件,当数据超过9条,不显示issues/I5IGXC
  • jvxetoolbar的bugissues/I5E385
  • online报表导出功能,"合计"行无法识别负数issues/I5LL7W
  • [JVxeTable] setValues 必须传递数组issues/I5RAXT
  • 接入钉钉登录,提交开始报错issues/I5WRIN
  • autopoi导入时报错issues/4144

二、后端问题修复

  • Apache Shiro 身份认证绕过漏洞 issues/4222
  • online报表参数无效 【jeecgboot-vue3/issues/225】
  • vue3代码生成器模板优化
  • 修复了一些已知安全漏洞
  • 修复使用带命名空间启动网关swagger看不到接口文档
  • 修复 Monitor 无法使用--spring.profiles.active 方式,使用配置文件
  • 修复yml文件格式不规范导致的打包启动问题
  • nacos log4j 是2.13.3版本版本,存在漏洞
  • 修复 labelWidth 设置无效的问题,默认宽度设置去掉,改成自适应
  • 默认排序字段逻辑兼容处理
  • 上传接口对文件类型进行限制,避免恶意脚本上传攻击风险
  • online表单开发代码生成选择Vue3风格,生成的代码却是vue2的 issues/4151
  • CVE-2022-2647问题修复issues/4096
  • Excel导入 带公式的时候精度丢失issues/3369
  • check存在sql注入漏洞issues/4129
  • deleteRecycleBin is affected by sql injectionissues/4125
  • putRecycleBin is affected by sql injectionissues/4126
  • 企业微信官方通讯录同步接口调整issues/4058
  • queryTableData is affected by sql injectionissues/4128
  • 这里有几处没有换成预编译,但个人建议修复issues/4127
  • exlce模板导出如果模板中有多个合并单元格的循环表格,第二个表格读取错误issues/4142
  • 第三方登录字典没有缓存issues/3998
  • 乐观锁报错v3.2.0,需要加注解issues/3847
  • oss外链经过转编码后,部分无效issues/4023
  • 包分离模式部署运行时,在线生成代码失败(已提供修改意见)issues/4084
  • 微服务@Dict注解显示commonApi异常NoSuchBeanDefinitionExceptionissues/4192
  • 阿里云OSS上传失败,却返回前端上传成功issues/I5JOXL
  • 在线表单Oracle环境下同步数据库报错issues/I5KJUJ
  • 菜单批量删除问题:主菜单及其菜单一起选中删除报错(实际已删除)issues/I5LCXS
  • 单体升级微服务最新版本3.4.3,启动jeecg-demo-cloud-start失败issues/4190
  • 代码生成时判断del_flag存在自动生成逻辑删除代码 issues/4196
  • 代码生成默认生成的菜单SQL中 is_leaf 字段为1,导致该菜单下的权限子菜单不可见 #4242

三、低代码模块升级

  • 支持关联记录和他表字段控件
  • 支持三级联动控件
  • online报表查询支持字典下拉搜索控件
  • online报表查询,字符串类型默认支持模糊查询,不需要输入*
  • online代码生成,支持选择那种前端代码生成(vue3\vue2\vue3原生)

v3.4.3

1 year ago

版本:v3.4.3 | 2022-10-18

升级日志

VUE3版本低代码模块首个全功能稳定版,online表单、online报表专项升级,新增很多亮点功能。 提醒:此版本的online后台与vue2 UI不兼容,vue2暂时不要升级后台。

升级SQL

ALTER TABLE `onl_cgform_field`
MODIFY COLUMN `field_show_type` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '表单控件类型' AFTER `dict_text`;

ALTER TABLE `onl_cgform_field` 
ADD COLUMN `db_is_persist` tinyint(1) NULL COMMENT '是否需要同步数据库字段, 1是0否' AFTER `db_is_null`;
update onl_cgform_field set db_is_persist = 1;

Online表单

  • 代码生成支持在线预览代码
  • 支持表单右侧评论区(留言、历史、附件)
  • online子表支持弹出表单维护
  • 修复BasicTable的自定义列不显示问题
  • 支持js增强
  • 新版online表单详情查看效果
  • 优化简化Online对接积木报表使用体验,列表添加打印按钮
  • 修复Online日期控件遮挡问题
  • 支持popup
  • online下拉框优化 兼容数据字典配置
  • online表单列表,操作列支持固定到最左侧
  • online表单样式优化,label超出4个字符 省略显示

Online报表

  • online报表,查询条件样式优化
  • online报表,路由参数和动态参数 查询结果不生效
  • online报表,jdbc连接地址漏洞问题
  • Online报表新增选中导出

修复 issues

  • 在线报表的sql中使用mysql的limit解析报错 issues/#4072
  • 在线报表不支持子查询,解析报错 issues/#4040
  • Online报表功能涉及子查询操作会产生SQL解析错误issues/I5M1DD
  • Online表单列表,自定义显示字段问题issues/I5HZ60
  • 列表列展示问题issues/#110
  • AUTO在线表单进入功能测试之后一直卡在功能测试界面issues/#I5E7YX
  • online按钮授权不允许删除,造成”操作栏“详情查看没有了issues/#I5GXS3
  • online表单子页面js增强化报错issues/#I5FRVI
  • Online表单对接积木报表issues/#3887
  • js增强,将表单中的单价和数量相乘得到总价issues/#3980
  • JS增强,内置列表增强方法不生效issues/#3976
  • 版本更新后,online下拉搜索框问题没解决issues/#I5IG3G
  • 3.0版本Online表单开发表单问题issues/#3354
  • 在线设计 double类型 精度问题issues/#I5B20H
  • online表单开发,强制同步后索引丢失issues/#3693
  • online表单开发中,导入EXCEL时,必填校验逻辑不完善issues/#3778
  • TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string or an instance of URL. Received undefined #158
  • 锁定屏幕功能报错 issues/I5TCGE
  • JVxeTypes.selectDictSearch sync问题 issues/I5QRT8
  • vue3的 在线报表开发,动态参数无效 #140
  • 代码出错 issues/I5UMML
  • 左侧动态菜单怎么做国际化处理 issues/I5N2PN
  • 头部“密码修改”菜单,因代码中接口url少了一个斜杠导致请求错误issues/I5V187
  • doMultiFieldsOrder() 多字段排序方法存在问题 issues/I5FJU6

版本:v3.4.3-GA | 2022-10-28

升级日志

此部分为近两周内修复和发布的新功能。

重磅低代码新功能

  • online表单,支持关联记录和他表字段控件
  • online表单,支持三级联动控件
  • online代码生成,支持选择那种前端代码生成(vue3\vue2\vue3原生)
  • 支持任意弹表单(钻取)
  • online报表查询,支持字典下拉搜索控件
  • online报表查询,字符串类型默认支持模糊查询,不需要输入*

修复严重Bug

  • 解决点击online功能测试,重新加载首页问题 issues/I5XBZF
  • 访问online表单开发菜单,提示token失效 #4132
  • 解决带参数的路由菜单点击右上角刷新报错
  • 用户添加按钮看不见问题
  • online代码生成选择Vue3风格,生成的代码却是vue2的 #4151
  • GUI代码生成器报错 #4150
  • vue3版本,online在线表单,新增页面无法显示联动控件 #4008
  • 解决标签页样式更多下拉显示样式错乱问题

v3.4.2

1 year ago

升级日志

重点升级ant-design-vue到3.2.12、升级vite等前端依赖;优化基础功能、修复bug等;本次未升级online相关功能。

Vue3 UI升级

  • 升级ant-design-vue到3.2.12、升级vite等前端依赖
  • 升级antd3后,moment全部替换为dayjs
  • websocket功能优化
  • 表单支持右侧嵌入评论区、附件区
  • 代码格式化调整
  • 自动检查vue3, 自动切换vue3库表
  • 菜单列表支持通过菜单名模糊查询
  • 支持年度控件
  • 同步vben部分代码
  • 升级antd3后一系列兼容改造工作
  • 表单label支持自定义显示字数,超长截取显示
  • Table表格自定义排序字段例子(角色列表)
  • 用户设置上传头像不生效解决
  • Table的全屏功能有问题,默认关闭
  • 系统通知,未读的排到最上面
  • 编译后主题色切换不生效黑屏的问题
  • 系统通知图标,没有随着主题色变
  • 修复labelWidth设置无效的问题
  • form表单label宽度支持设置,默认去掉一些表单的宽度设置,默认自适应

升级and3后兼容问题(遇到请修改)

  • Table废弃了 slots 插槽,需要修改写法(目前老用法可以继续用,会有警告)
  • Form.tem只能收集一个表单项的数据,如果有多个表单项,会导致收集搭乱(item里面有多个元素,会报警告)
  • antd3采用dayjs替换掉了moment,升级需要搜索moment换成dayjs(dayjs与moment语法差不多,替换不难)
  • 针对Table废弃slots 插槽和Form.tem只能一个表单项,代码尚未改造完,虽然有警告,但不影响使用(antd3做了兼容)
  • Tabs的动画默认没有了,如果出现问题,需要加上animated参数
  • 样式更名.ant-tabs-bar —> .ant-tabs-nav
  • 下拉类型的SelectTypes更名为SelectValue
  • 更多升级日志见 从 ant-design-vue 2.x 版本升级到 ant-design-vue 3.x 版本
  • form表单label宽度设置问题修复,如表单宽度效果有问题,可以去掉宽度设置

新功能升级

  • 新版系统通知风格(支持直接打开业务单)
  • 消息模板新增Markdown类型
  • 在线文件存储,文档预览文档采用pdf模式预览
  • 钉钉和企业微信推送支持markdown格式
  • Swagger2文档,token保存问题
  • 文件存储minio上传失败,提示错误不准确(禁止特殊文件类型上传)
  • 重构系统通知WebSocket代码,简化逻辑
  • 新建部门的ID规则改造为IdWorker
  • jdbc连接地址漏洞问题修复
  • /actuator/ shiro默认不排除,有漏洞风险

修复bug

v3.4.0

1 year ago

当前版本:v3.4.0 | 2022-08-06

升级日志

微服务重构专项升级,简化优化微服务架构,让微服务使用更加方便。

主要改造点

优化点解决

  • 1 解决原微服务模块,自定义nacos配置不方便
  • 2 解决原微服务模块,自定义数据源不方便
  • 3 nacos配置下放到每个模块,加上import方式,集成更灵活
  • 4 解决切换微服务不方便,要手工改很多东西
  • 5 原微服务结构不清晰,有点乱
  • 6 存在本地配置和nacos冲突问题
  • 7 Dockerfile存在缺陷
  • 8 gateway走自己的nacos配置,原来太冗余太重
  • 9 jeecg-boot-starter拆分出来,让项目更简单,降低入门难度
  • 10 默认不引入jeecg-cloud-test示例项目,降低入门难度
  • 11 文档升级,各个功能集成更加简单(import带来的好处)

微服务文档

微服务技术栈

  • 基础框架:Spring Boot 2.6.6

  • 微服务框架: Spring Cloud Alibaba 2021.0.1.0

  • 持久层框架:MybatisPlus 3.5.1

  • 报表工具: JimuReport 1.5.2

  • 安全框架:Apache Shiro 1.8.0,Jwt 3.11.0

  • 微服务技术栈:Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Skywalking

  • 数据库连接池:阿里巴巴Druid 1.1.22

  • 日志打印:logback

  • 其他:autopoi, fastjson,poi,Swagger-ui,quartz, lombok(简化代码)等。

微服务解决方案

1、服务注册和发现 Nacos

2、统一配置中心 Nacos

3、路由网关 gateway(三种加载方式)

4、分布式 http feign

5、熔断降级限流 Sentinel

6、分布式文件 Minio、阿里OSS

7、统一权限控制 JWT + Shiro

8、服务监控 SpringBootAdmin

9、链路跟踪 Skywalking 参考文档

10、消息中间件 RabbitMQ

11、分布式任务 xxl-job

12、分布式事务 Seata

13、分布式日志 elk + kafka

14、支持 docker-compose、k8s、jenkins

15、CAS 单点登录

16、路由限流

微服务架构图

微服务架构图

v3.3.0

1 year ago

升级日志

不兼容的升级点:Websocket安全加强,增加 token 校验、接口签名拦截器的时间戳改造、System模块重构大。平滑升级有难度,请仔细对比修改日志。

重点升级

  • websocket安全加强,增加token校验
  • 【签名改造】 解决X-TIMESTAMP时区问题
  • System模块开展代码p3c规范扫描大重构
  • 升级代码生成器,支持生成权限注解和菜单的SQL
  • vue2弹窗支持任意拖动位置
  • 微服务模式下,多租户不支持问题修复
  • 模板消息重构,提供全局统一推送接口(支持钉钉、企业微信、邮件、短信、系统消息)
  • 提供数据脱敏注解
  • 发现的SQL漏洞修复
  • Vue3前端与后台版本号同步,功能也已经全部同步

后台问题

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

v3.2.0

1 year ago

项目介绍

JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高效率,节省成本,同时又不失灵活性!

当前版本:v3.2.0 | 2022-04-25

源码下载

技术文档

升级日志

此版本重构很大,重点升级了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~