项目介绍
JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue3,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高效率,节省成本,同时又不失灵活性!
当前版本:v3.6.1 | 2023-12-11
源码下载
github地址
gitee地址
升级日志
Online低代码功能专项升级,JS增强支持代码提示、新增一对多内嵌风格和一对多Tab风格、Online新增新用户操作引导、人大金仓、达梦数据库兼容工作等等。
ONLINE升级日志
- Online操作新用户引导功能
- 新增一对多内嵌风格
- 新增一对多Tab风格
- Online JS增强支持api提示
- 树列表支持查询
- 防止SQL注入风险,下拉搜索组件参数规则变更(支持表字典白名单控制、SQL注入安全加强)
- 人大金仓、达梦数据库兼容工作
- 【安全】online敏感接口,加权限注解
- 【严重bug修复】online删除字段,其他tab不同步删除导致的问题
- 使用在线Online开发,出现搜索框前面的label字被截断 · Issue #5387
- online表单开发新增时,字段信息校验提示被遮挡 · Issue #5407
- 在线表单中设置的页面配置中高级配置中设置的label长度,在列表与详情界面无效 · Issue #5400
- js 自定义按钮表达式 怎么支持多个字段判断? · Issue #769
- 开启服务代理后,刷新接口报错 · Issue #5431
- 在线生成表单没有见到空行,但页面属性会报空行数据错误 · Issue #5487
- oracle数据,online表单中的 “关联记录” 功能模块BUG · Issue #5321
- online表单生成时,创建字段后删除,页面属性、检验字段、外键处对应字段无法删除 · Issue #813
- 在线生成删除多余字段后保存失败 · Issue #815
- AUTO在线表单导出null · Issue #5529
- Online在线功能ERP主题,从表记录被误删除 · Issue #5591
- online表单配置成单表(树)后,界面搜索不起作用 · Issue #888
- 【QQYUN-6685】link按钮添加多表达式
- 【issues/5371】一对多子表popup增加多选
- 【QQYUN-6647】页面配置中高级配置中设置的label长度,在列表与详情界面无效
- 【QQYUN-6594】使用在线Online开发,出现搜索框前面的label字被截断
- 【QQYUN-6588】代码警告,子表多出空白列
- 【QQYUN-4263】Online报表支持跨页选择导出问题
- 【issues/5371】一对多子表popup增加多选
- 【QQYUN-6808】online编辑字段多了卡顿
- online报表导出时间类型,导出的时间带T
其他升级日志
- 升级底层依赖autopoi版本到1.4.7
- 升级底层依赖jimureport版本到1.6.6
- Online表单开发-在数据库属性页面新增字段删除后,页面属性没有同步删除 · Issue #5505
- tabel的列设置隐藏列保存后切换路由问题 · Issue #825
- 使用BasicTable表格的更多操作按钮禁用属性BUG · Issue #839
- JImageUpload 开启 multiple, 上传多个图片,返回的上传成功文件列表中只有第一个文件名称 · Issue #846
- 使用代码里的代码生成器 · Issue #833
- 3.6.0(发布时间:2023-10-23)树形表格 复选框 不能回显 · Issue #831
- JSelectDept点击x关掉或者点击取消按钮关闭弹窗,再打开选择部门的窗口勾选消失了 · Issue #863
- 用户管理-岗位仍然不回显 · Issue #855
- BasicForm表单中第一次就使用复制粘贴操作input框,规则校验没触发 · Issue #5579
- JCodeEditor组件初始化时没有设置mode · Issue #869
- MarkdownViewer组件样式有点难看 · Issue #872
- BasicTable组件设置hideSelectAll: true无法隐藏全选框 · Issue #5595
- tsConfig.json中有报错。 · Issue #5564
- 当表格无数据且显示合计栏,关闭tab页后,BasicTable报错 · Issue #894
- 在JSearchSelect组件标签上添加class/style样式不会生效 · Issue #897
- jeecg-uniapp-master前端项目无法集成到企业微信OAuth2登录 · Issue #5533
- POI导出一对多只有一条数据时,疯狂打印错误日志 · Issue #5528
- 导出表格设置了数字格式导出之后仍然是文本格式,并且无法进行计算 · Issue #5538
- 系统菜单,编辑内容时,显示文本框不居中 · Issue #790
- 3.6.0升级后,组件页面显示错位 · Issue #5514
- 登录报错 · Issue #5516
- 登录报错 Cannot destructure property "userlnfo' of (intermediate value)' as it is undefined. · Issue #812
- useCustomSelection.tsx 同步选中内容有问题 · Issue #828
- 用户管理-》新增用户 职务、部门接口会调用多次,页面请求过多性能太差 · Issue #788
- dev模式,修改代码后modal卡死,新增详情编辑一点就卡死#860
升级SQL
3.6.0升级至3.6.1版本对应的增量升级SQL,执行完后,还需要手工给admin角色分配(sql解析接口、同步数据库接口、导入表接口)按钮权限。
-- 新增风格一对多内嵌和Tab风格
INSERT INTO sys_permission (id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external)
VALUES ('1691031996d5931315212', '1455100420297859074', 'AUTO在线一对多内嵌', '/online/cgformInnerTableList/:id', 'super/online/cgform/auto/innerTable/OnlCgformInnerTableList', 1, '', NULL, 1, NULL, '0', 1.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2023-08-14 18:20:20', 'admin', '2023-08-14 18:46:18', 0, 0, NULL, 0);
INSERT INTO sys_permission (id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external)
VALUES ('1691031996d5931315213', '1455100420297859074', 'AUTO在线Tab风格', '/online/cgformTabList/:id', 'super/online/cgform/auto/tab/OnlCgformTabList', 1, '', NULL, 1, NULL, '0', 1.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2023-08-14 18:20:20', 'admin', '2023-08-14 18:46:18', 0, 0, NULL, 0);
-- 【安全】online敏感接口,加权限注解(sql解析接口、同步数据库接口、导入表接口)
INSERT INTO sys_permission (id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) VALUES ('1699374704168534017', '1460888189937176577', 'SQL解析', NULL, NULL, 0, NULL, NULL, 2, 'online:report:parseSql', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-09-06 18:51:17', NULL, NULL, 0, 0, '1', 0);
INSERT INTO sys_permission (id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) VALUES ('1699374509749960705', '1455101470794850305', '查询数据库表名', NULL, NULL, 0, NULL, NULL, 2, 'online:form:queryTables', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-09-06 18:50:31', NULL, NULL, 0, 0, '1', 0);
INSERT INTO sys_permission (id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) VALUES ('1699374269152100354', '1455101470794850305', '同步数据库', NULL, NULL, 0, NULL, NULL, 2, 'online:form:syncDb', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-09-06 18:49:33', NULL, NULL, 0, 0, '1', 0);
update sys_permission set is_leaf=0 where id in ('1460888189937176577','1455101470794850305');
新功能效果图
- JS增强代码提示
- 新手操作引导
技术交流
- 开发文档:https://help.jeecg.com
- 官方网站: http://www.jeecg.com
- 在线演示:http://boot3.jeecg.com
- 快速入门:入门视频 | 代码生成
为什么选择 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,基于角色的访问控制)
开源版界面
PC端
系统交互
仪表盘
图表示例
仪表盘设计器
报表设计器
UNIAPP效果
手机端
PAD端
在线接口文档
商业功能介绍
流程设计
简版流程设计
表单设计器
大屏设计器
零代码应用
欢迎吐槽,欢迎star~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。