项目介绍
JeecgBoot是一款基于代码生成器的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高效率,节省成本,同时又不失灵活性!
当前版本:v2.4.5 | 2021-06-07
源码下载
技术文档
- 技术官网: http://www.jeecg.com
- 在线演示: http://boot.jeecg.com
- 技术文档: http://doc.jeecg.com
- 常见问题: http://jeecg.com/doc/qa
升级日志
此版本无缝集成了钉钉和企业微信,实现了用户与部门的同步、公告和系统消息推送支持推送到钉钉和企业微信,快速建立与第三方APP的互通
新功能升级
- 无缝集成钉钉,实现用户和部门同步,公告和系统消息推送支持推送到钉钉
- 无缝集成企业微信,实现用户和部门同步,公告和系统消息推送支持推送到企业微信
- 钉钉和企业微信消息推送,支持普通文本和图文两种类型
- Online新增支持按照部门进行权限授权
- Online导入功能支持校验规则,友好提示成功多少行失败多少行
- Online图表、Online报表、Online报表加缓存,提升低代码性能
- Online popup支持单选和多选设置
- 代码生成器生成popup只支持单选和多选配置
- Online表字典下拉支持异步搜索
- 优化微服务应用下存在表字段需要字典翻译时加载缓慢问题
- 提供新的部门管理列表,支持异步加载数据
- 定时任务支持一个类,开启多个定时任务
- 【页面改造】登录、注册相关代码改成v-model绑定模式
- 【页面改造】其他改造成v-model的代码(常见案例、通讯录、定时任务、校验规则、填值规则)
- 【页面改造】 登录页面拆分重构优化
- JVXETable 支持默认出现输入框选项配置
- 积木报表升级到最新版本
- 查询过滤器,支持多字段排序
- Online报表 sql解析把大写字母变成小写的了,导致查询没有结果
Issues修复
- 自定义树控件在代码生成显示问题 #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?
开源界“小普元”超越传统商业平台。引领低代码开发模式(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端