|
|
|
|
|
JeecgBoot 低代码开发平台
|
|
|
===============
|
|
|
|
|
|
当前最新版本: 3.7.0_all(发布日期:2024-06-23)
|
|
|
|
|
|
|
|
|
[](https://github.com/zhangdaiscott/jeecg-boot/blob/master/LICENSE)
|
|
|
[](http://jeecg.com/aboutusIndex)
|
|
|
[](https://github.com/zhangdaiscott/jeecg-boot)
|
|
|
[](https://github.com/zhangdaiscott/jeecg-boot)
|
|
|
[](https://github.com/zhangdaiscott/jeecg-boot)
|
|
|
|
|
|
|
|
|
|
|
|
项目介绍
|
|
|
-----------------------------------
|
|
|
|
|
|
<h3 align="center">Java Low Code Platform for Enterprise web applications</h3>
|
|
|
|
|
|
JeecgBoot 是一款基于代码生成器的`低代码开发平台`!前后端分离架构 SpringBoot2.x和3.x,SpringCloud,Ant Design Vue3,Mybatis-plus,Shiro,JWT,支持微服务。强大的代码生成器让前后端代码一键生成,实现低代码开发! JeecgBoot 引领新的低代码开发模式(OnlineCoding-> 代码生成器-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开发更多关注业务。既能快速提高效率,节省研发成本,同时又不失灵活性!
|
|
|
|
|
|
|
|
|
#### 项目说明
|
|
|
|
|
|
| 项目名 | 说明 |
|
|
|
|--------------------|------------------------|
|
|
|
| `jeecg-boot` | 后端源码JAVA(SpringBoot微服务架构) |
|
|
|
| `jeecgboot-vue3` | 前端源码VUE3(vue3+vite5+ts最新技术栈) |
|
|
|
|
|
|
|
|
|
|
|
|
技术文档
|
|
|
-----------------------------------
|
|
|
|
|
|
- 官方网站: [http://www.jeecg.com](http://www.jeecg.com)
|
|
|
- 新手指南: [快速入门](http://www.jeecg.com/doc/quickstart)
|
|
|
- QQ交流群 : ⑨808791225、其他(满)
|
|
|
- 在线演示 : [在线演示](http://boot3.jeecg.com) | [APP演示](http://jeecg.com/appIndex)
|
|
|
> 演示系统的登录账号密码,请点击 [获取账号密码](http://jeecg.com/doc/demo) 获取
|
|
|
|
|
|
|
|
|
|
|
|
启动项目
|
|
|
-----------------------------------
|
|
|
|
|
|
##### 命令和IDE启动
|
|
|
|
|
|
- [前端项目快速启动](http://help.jeecg.com/setup/startup.html)
|
|
|
- [通过IDEA启动前后端项目](https://help.jeecg.com/java/setup/idea/startup.html)
|
|
|
|
|
|
##### Docker启动
|
|
|
|
|
|
- [Docker启动前端](https://help.jeecg.com/java/docker/vue3.html)
|
|
|
- [Docker启动后台](https://help.jeecg.com/java/docker/up.html)
|
|
|
|
|
|
|
|
|
##### 微服务启动
|
|
|
|
|
|
- [单体快速切换微服务](https://help.jeecg.com/java/springcloud/switchcloud/monomer.html)
|
|
|
- [Docker启动微服务后台](https://help.jeecg.com/java/docker/springcloud.html)
|
|
|
|
|
|
|
|
|
技术架构:
|
|
|
-----------------------------------
|
|
|
|
|
|
#### 后端
|
|
|
|
|
|
- IDE建议: IDEA (必须安装lombok插件 )
|
|
|
- 语言:Java 8+ (支持17)
|
|
|
- 依赖管理:Maven
|
|
|
- 基础框架:Spring Boot 2.7.18
|
|
|
- 微服务框架: Spring Cloud Alibaba 2021.0.1.0
|
|
|
- 持久层框架:MybatisPlus 3.5.3.2
|
|
|
- 报表工具: JimuReport 1.7.6
|
|
|
- 安全框架:Apache Shiro 1.12.0,Jwt 3.11.0
|
|
|
- 微服务技术栈:Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Skywalking
|
|
|
- 数据库连接池:阿里巴巴Druid 1.1.22
|
|
|
- 日志打印:logback
|
|
|
- 缓存:Redis
|
|
|
- 其他:autopoi, fastjson,poi,Swagger-ui,quartz, lombok(简化代码)等。
|
|
|
- 默认数据库脚本:MySQL5.7+
|
|
|
- [其他数据库,需要自己转](https://my.oschina.net/jeecg/blog/4905722)
|
|
|
|
|
|
|
|
|
#### 前端
|
|
|
|
|
|
- 前端IDE建议:WebStorm、Vscode
|
|
|
- 采用 Vue3.0+TypeScript+Vite+Ant-Design-Vue等新技术方案,包括二次封装组件、utils、hooks、动态菜单、权限校验、按钮级别权限控制等功能
|
|
|
- 最新技术栈:Vue3.0 + TypeScript + Vite5 + ant-design-vue4 + pinia + echarts + unocss + vxe-table + qiankun + es6
|
|
|
- 依赖管理:node、npm、pnpm
|
|
|
|
|
|
|
|
|
|
|
|
#### 支持库
|
|
|
|
|
|
| 数据库 | 支持 |
|
|
|
| --- | --- |
|
|
|
| MySQL | √ |
|
|
|
| Oracle11g | √ |
|
|
|
| Sqlserver2017 | √ |
|
|
|
| PostgreSQL | √ |
|
|
|
| MariaDB | √ |
|
|
|
| 达梦 | √ |
|
|
|
| 人大金仓 | √ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 微服务解决方案
|
|
|
|
|
|
|
|
|
- 1、服务注册和发现 Nacos √
|
|
|
- 2、统一配置中心 Nacos √
|
|
|
- 3、路由网关 gateway(三种加载方式) √
|
|
|
- 4、分布式 http feign √
|
|
|
- 5、熔断降级限流 Sentinel √
|
|
|
- 6、分布式文件 Minio、阿里OSS √
|
|
|
- 7、统一权限控制 JWT + Shiro √
|
|
|
- 8、服务监控 SpringBootAdmin√
|
|
|
- 9、链路跟踪 Skywalking [参考文档](https://help.jeecg.com/java/springcloud/super/skywarking.html)
|
|
|
- 10、消息中间件 RabbitMQ √
|
|
|
- 11、分布式任务 xxl-job √
|
|
|
- 12、分布式事务 Seata
|
|
|
- 13、分布式日志 elk + kafka
|
|
|
- 14、支持 docker-compose、k8s、jenkins
|
|
|
- 15、CAS 单点登录 √
|
|
|
- 16、路由限流 √
|
|
|
|
|
|
|
|
|
|
|
|
后台目录结构
|
|
|
-----------------------------------
|
|
|
```
|
|
|
项目结构
|
|
|
├─jeecg-boot-parent(父POM: 项目依赖、modules组织)
|
|
|
│ ├─jeecg-boot-base-core(共通模块: 工具类、config、权限、查询过滤器、注解等)
|
|
|
│ ├─jeecg-module-demo 示例代码
|
|
|
│ ├─jeecg-module-system System系统管理目录
|
|
|
│ │ ├─jeecg-system-biz System系统管理权限等功能
|
|
|
│ │ ├─jeecg-system-start System单体启动项目(8080)
|
|
|
│ │ ├─jeecg-system-api System系统管理模块对外api
|
|
|
│ │ │ ├─jeecg-system-cloud-api System模块对外提供的微服务接口
|
|
|
│ │ │ ├─jeecg-system-local-api System模块对外提供的单体接口
|
|
|
│ ├─jeecg-server-cloud --微服务模块
|
|
|
├─jeecg-cloud-gateway --微服务网关模块(9999)
|
|
|
├─jeecg-cloud-nacos --Nacos服务模块(8848)
|
|
|
├─jeecg-system-cloud-start --System微服务启动项目(7001)
|
|
|
├─jeecg-demo-cloud-start --Demo微服务启动项目(7002)
|
|
|
├─jeecg-visual
|
|
|
├─jeecg-cloud-monitor --微服务监控模块 (9111)
|
|
|
├─jeecg-cloud-xxljob --微服务xxljob定时任务服务端 (9080)
|
|
|
├─jeecg-cloud-sentinel --sentinel服务端 (9000)
|
|
|
├─jeecg-cloud-test -- 微服务测试示例(各种例子)
|
|
|
├─jeecg-cloud-test-more -- 微服务测试示例(feign、熔断降级、xxljob、分布式锁)
|
|
|
├─jeecg-cloud-test-rabbitmq -- 微服务测试示例(rabbitmq)
|
|
|
├─jeecg-cloud-test-seata -- 微服务测试示例(seata分布式事务)
|
|
|
├─jeecg-cloud-test-shardingsphere -- 微服务测试示例(分库分表)
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 微服务架构图
|
|
|

|
|
|
|
|
|
|
|
|
|
|
|
### 功能模块
|
|
|
```
|
|
|
├─Online在线开发(低代码)
|
|
|
│ ├─Online在线表单
|
|
|
│ ├─Online代码生成器
|
|
|
│ ├─Online在线报表
|
|
|
│ ├─仪表盘设计器
|
|
|
│ ├─AI助手
|
|
|
│ ├─系统编码规则
|
|
|
│ ├─系统校验规则
|
|
|
├─积木报表设计器
|
|
|
│ ├─打印设计器
|
|
|
│ ├─数据报表设计
|
|
|
│ ├─图形报表设计(支持echart)
|
|
|
├─系统管理
|
|
|
│ ├─用户管理
|
|
|
│ ├─角色管理
|
|
|
│ ├─菜单管理
|
|
|
│ ├─权限设置(支持按钮权限、数据权限)
|
|
|
│ ├─表单权限(控制字段禁用、隐藏)
|
|
|
│ ├─部门管理
|
|
|
│ ├─我的部门(二级管理员)
|
|
|
│ └─字典管理
|
|
|
│ └─分类字典
|
|
|
│ └─系统公告
|
|
|
│ └─职务管理
|
|
|
│ └─通讯录
|
|
|
│ ├─多数据源管理
|
|
|
│ └─多租户管理(租户管理、租户角色、我的租户)
|
|
|
├─消息中心
|
|
|
│ ├─消息管理
|
|
|
│ ├─模板管理
|
|
|
├─代码生成器(低代码)
|
|
|
│ ├─代码生成器功能(一键生成前后端代码,生成后无需修改直接用,绝对是后端开发福音)
|
|
|
│ ├─代码生成器模板(提供4套模板,分别支持单表和一对多模型,不同风格选择)
|
|
|
│ ├─代码生成器模板(生成代码,自带excel导入导出)
|
|
|
│ ├─查询过滤器(查询逻辑无需编码,系统根据页面配置自动生成)
|
|
|
│ ├─高级查询器(弹窗自动组合查询条件)
|
|
|
│ ├─Excel导入导出工具集成(支持单表,一对多 导入导出)
|
|
|
│ ├─平台移动自适应支持
|
|
|
├─系统监控
|
|
|
│ ├─Gateway路由网关
|
|
|
│ ├─性能扫描监控
|
|
|
│ │ ├─监控 Redis
|
|
|
│ │ ├─Tomcat
|
|
|
│ │ ├─jvm
|
|
|
│ │ ├─服务器信息
|
|
|
│ │ ├─请求追踪
|
|
|
│ │ ├─磁盘监控
|
|
|
│ ├─定时任务
|
|
|
│ ├─系统日志
|
|
|
│ ├─消息中心(支持短信、邮件、微信推送等等)
|
|
|
│ ├─数据日志(记录数据快照,可对比快照,查看数据变更情况)
|
|
|
│ ├─系统通知
|
|
|
│ ├─SQL监控
|
|
|
│ ├─swagger-ui(在线接口文档)
|
|
|
│─报表示例
|
|
|
│ ├─曲线图
|
|
|
│ └─饼状图
|
|
|
│ └─柱状图
|
|
|
│ └─折线图
|
|
|
│ └─面积图
|
|
|
│ └─雷达图
|
|
|
│ └─仪表图
|
|
|
│ └─进度条
|
|
|
│ └─排名列表
|
|
|
│ └─等等
|
|
|
│─大屏模板
|
|
|
│ ├─作战指挥中心大屏
|
|
|
│ └─物流服务中心大屏
|
|
|
│─常用示例
|
|
|
│ ├─自定义组件
|
|
|
│ ├─对象存储(对接阿里云)
|
|
|
│ ├─JVXETable示例(各种复杂ERP布局示例)
|
|
|
│ ├─单表模型例子
|
|
|
│ └─一对多模型例子
|
|
|
│ └─打印例子
|
|
|
│ └─一对多TAB例子
|
|
|
│ └─内嵌table例子
|
|
|
│ └─常用选择组件
|
|
|
│ └─异步树table
|
|
|
│ └─接口模拟测试
|
|
|
│ └─表格合计示例
|
|
|
│ └─异步树列表示例
|
|
|
│ └─一对多JEditable
|
|
|
│ └─JEditable组件示例
|
|
|
│ └─图片拖拽排序
|
|
|
│ └─图片翻页
|
|
|
│ └─图片预览
|
|
|
│ └─PDF预览
|
|
|
│ └─分屏功能
|
|
|
│─封装通用组件
|
|
|
│ ├─行编辑表格JEditableTable
|
|
|
│ └─省略显示组件
|
|
|
│ └─时间控件
|
|
|
│ └─高级查询
|
|
|
│ └─用户选择组件
|
|
|
│ └─报表组件封装
|
|
|
│ └─字典组件
|
|
|
│ └─下拉多选组件
|
|
|
│ └─选人组件
|
|
|
│ └─选部门组件
|
|
|
│ └─通过部门选人组件
|
|
|
│ └─封装曲线、柱状图、饼状图、折线图等等报表的组件(经过封装,使用简单)
|
|
|
│ └─在线code编辑器
|
|
|
│ └─上传文件组件
|
|
|
│ └─验证码组件
|
|
|
│ └─树列表组件
|
|
|
│ └─表单禁用组件
|
|
|
│ └─等等
|
|
|
│─更多页面模板
|
|
|
│ ├─各种高级表单
|
|
|
│ ├─各种列表效果
|
|
|
│ └─结果页面
|
|
|
│ └─异常页面
|
|
|
│ └─个人页面
|
|
|
├─高级功能
|
|
|
│ ├─提供单点登录CAS集成方案
|
|
|
│ ├─提供APP发布方案
|
|
|
│ ├─集成Websocket消息通知机制
|
|
|
│─更多商业功能
|
|
|
│ ├─流程设计器
|
|
|
│ ├─表单设计器
|
|
|
│ ├─大屏设计器
|
|
|
│ └─我的任务
|
|
|
│ └─历史流程
|
|
|
│ └─历史流程
|
|
|
│ └─流程实例管理
|
|
|
│ └─流程监听管理
|
|
|
│ └─流程表达式
|
|
|
│ └─我发起的流程
|
|
|
│ └─我的抄送
|
|
|
│ └─流程委派、抄送、跳转
|
|
|
│ └─OA办公组件
|
|
|
│ └─。。。
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|