我是「猿碼天地」,一個熱愛技術、熱愛程式設計的IT猿。技術是開源的,知識是共享的!
寫作是對自己學習的總結和記錄,如果您對 Java、分布式、微服務、中間件、Spring Boot、Spring Cloud等技術感興趣,可以關注我的動态,我們一起學習,一起成長!
用知識改變命運,讓家人過上更好的生活,網際網路人一家親!
Java知識學堂:https://gitee.com/zhangbw666/it-knowledge
項目介紹
JeecgBoot 是一款基于代碼生成器的
低代碼
開發平台!前後端分離架構 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支援微服務。強大的代碼生成器讓前後端代碼一鍵生成,實作低代碼開發! JeecgBoot 引領新的低代碼開發模式(OnlineCoding-> 代碼生成器-> 手工MERGE), 幫助解決Java項目70%的重複工作,讓開發更多關注業務。既能快速提高效率,節省研發成本,同時又不失靈活性!
JeecgBoot 提供了一系列
低代碼子產品
,實作線上開發
真正的零代碼
:Online表單開發、Online報表、報表配置能力、線上圖表設計、大屏設計、移動配置能力、表單設計器、線上設計流程、流程自動化配置、插件能力(可插拔)等等!
JEECG宗旨是:
簡單功能由OnlineCoding配置實作,做到
零代碼開發
;複雜功能由代碼生成器生成進行手工Merge 實作
低代碼開發
,既保證了
智能
又兼顧
靈活
;實作了低代碼開發的同時又支援靈活編碼,解決了目前低代碼産品普遍不靈活的弊端!
JEECG業務流程:
采用工作流來實作、擴充出任務接口,供開發編寫業務邏輯,表單提供多種解決方案:表單設計器、online配置表單、編碼表單。同時實作了流程與表單的分離設計(松耦合)、并支援任務節點靈活配置,既保證了公司流程的保密性,又減少了開發人員的工作量。
适用項目
Jeecg-Boot低代碼開發平台,可以應用在任何J2EE項目的開發中,尤其适合SAAS項目、企業資訊管理系統(MIS)、内部辦公系統(OA)、企業資源計劃系統(ERP)、客戶關系管理系統(CRM)等,其半智能手工Merge的開發方式,可以顯著提高開發效率70%以上,極大降低開發成本。
技術架構
開發環境
- 語言:Java 8
- IDE(JAVA):IDEA / Eclipse安裝lombok插件
- IDE(前端):WebStorm 或者 IDEA
- 依賴管理:Maven
- 資料庫:MySQL5.7+ & Oracle 11g & Sqlserver2017
- 緩存:Redis
後端
- 基礎架構:Spring Boot 2.3.5.RELEASE
- 微服務架構:Spring Cloud Alibaba 2.2.3.RELEASE
- 持久層架構:Mybatis-plus 3.4.1
- 安全架構:Apache Shiro 1.7.0,Jwt 3.11.0
- 微服務技術棧:Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Skywarking
- 資料庫連接配接池:阿裡巴巴Druid 1.1.22
- 緩存架構:redis
- 日志列印:logback
- 其他:fastjson,poi,Swagger-ui,quartz, lombok(簡化代碼)等。
前端
- Vue 2.6.10,Vuex,Vue Router
- Axios
- ant-design-vue
- webpack,yarn
- vue-cropper - 頭像裁剪元件
- @antv/g2 - Alipay AntV 資料可視化圖表
- Viser-vue - antv/g2 封裝實作
- eslint,@vue/cli 3.2.1
- vue-print-nb - 列印
功能子產品
├─系統管理
│ ├─使用者管理
│ ├─角色管理
│ ├─菜單管理
│ ├─權限設定(支援按鈕權限、資料權限)
│ ├─表單權限(控制字段禁用、隐藏)
│ ├─部門管理
│ ├─我的部門(二級管理者)
│ └─字典管理
│ └─分類字典
│ └─系統公告
│ └─職務管理
│ └─通訊錄
│ └─多租戶管理
├─消息中心
│ ├─消息管理
│ ├─模闆管理
├─代碼生成器(低代碼)
│ ├─代碼生成器功能(一鍵生成前後端代碼,生成後無需修改直接用,絕對是後端開發福音)
│ ├─代碼生成器模闆(提供4套模闆,分别支援單表和一對多模型,不同風格選擇)
│ ├─代碼生成器模闆(生成代碼,自帶excel導入導出)
│ ├─查詢過濾器(查詢邏輯無需編碼,系統根據頁面配置自動生成)
│ ├─進階查詢器(彈窗自動組合查詢條件)
│ ├─Excel導入導出工具內建(支援單表,一對多 導入導出)
│ ├─平台移動自适應支援
├─系統監控
│ ├─Gateway路由網關
│ ├─性能掃描監控
│ │ ├─監控 Redis
│ │ ├─Tomcat
│ │ ├─jvm
│ │ ├─伺服器資訊
│ │ ├─請求追蹤
│ │ ├─磁盤監控
│ ├─定時任務
│ ├─系統日志
│ ├─消息中心(支援短信、郵件、微信推送等等)
│ ├─資料日志(記錄資料快照,可對比快照,檢視資料變更情況)
│ ├─系統通知
│ ├─SQL監控
│ ├─swagger-ui(線上接口文檔)
│─報表示例
│ ├─曲線圖
│ └─餅狀圖
│ └─柱狀圖
│ └─折線圖
│ └─面積圖
│ └─雷達圖
│ └─儀表圖
│ └─進度條
│ └─排名清單
│ └─等等
│─大屏模闆
│ ├─作戰指揮中心大屏
│ └─物流服務中心大屏
│─常用示例
│ ├─自定義元件
│ ├─對象存儲(對接阿裡雲)
│ ├─JVXETable示例(各種複雜ERP布局示例)
│ ├─單表模型例子
│ └─一對多模型例子
│ └─列印例子
│ └─一對多TAB例子
│ └─内嵌table例子
│ └─常用選擇元件
│ └─異步樹table
│ └─接口模拟測試
│ └─表格合計示例
│ └─異步樹清單示例
│ └─一對多JEditable
│ └─JEditable元件示例
│ └─圖檔拖拽排序
│ └─圖檔翻頁
│ └─圖檔預覽
│ └─PDF預覽
│ └─分屏功能
│─封裝通用元件
│ ├─行編輯表格JEditableTable
│ └─省略顯示元件
│ └─時間控件
│ └─進階查詢
│ └─使用者選擇元件
│ └─報表元件封裝
│ └─字典元件
│ └─下拉多選元件
│ └─選人元件
│ └─選部門元件
│ └─通過部門選人元件
│ └─封裝曲線、柱狀圖、餅狀圖、折線圖等等報表的元件(經過封裝,使用簡單)
│ └─線上code編輯器
│ └─上傳檔案元件
│ └─驗證碼元件
│ └─樹清單元件
│ └─表單禁用元件
│ └─等等
│─更多頁面模闆
│ ├─各種進階表單
│ ├─各種清單效果
│ └─結果頁面
│ └─異常頁面
│ └─個人頁面
├─進階功能
│ ├─系統編碼規則
│ ├─提供單點登入CAS內建方案
│ ├─提供APP釋出方案
│ ├─內建Websocket消息通知機制
├─Online線上開發(低代碼)
│ ├─Online線上表單 - 功能已開放
│ ├─Online代碼生成器 - 功能已開放
│ ├─Online線上報表 - 功能已開放
│ ├─Online線上圖表(暫不開源)
│ ├─Online圖表模闆配置(暫不開源)
│ ├─Online布局設計(暫不開源)
│ ├─多資料源管理 - 功能已開放
├─積木報表設計器(低代碼)
│ ├─列印設計器
│ ├─資料報表設計
│ ├─圖形報表設計(支援echart)
│ ├─大屏設計器(暫不開源)
│─流程子產品功能 (暫不開源)
│ ├─流程設計器
│ ├─線上表單設計
│ └─我的任務
│ └─曆史流程
│ └─曆史流程
│ └─流程執行個體管理
│ └─流程監聽管理
│ └─流程表達式
│ └─我發起的流程
│ └─我的抄送
│ └─流程委派、抄送、跳轉
│ └─。。。
└─其他子產品
└─更多功能開發中。。
微服務整體解決方案(2.4+版本)
1、服務注冊和發現 Nacos √
2、統一配置中心 Nacos √
3、路由網關 gateway(三種加載方式) √
4、分布式 http feign √
5、熔斷和降級 Sentinel √
6、分布式檔案 Minio、阿裡OSS √
7、統一權限控制 JWT + Shiro √
8、服務監控 SpringBootAdmin√
9、鍊路跟蹤 Skywarking 參考文檔
10、消息中間件 RabbitMQ √
11、分布式任務 xxl-job √
12、分布式事務 Seata
13、分布式日志 elk + kafa
14、支援 docker-compose、k8s、jenkins
15、CAS 單點登入 √
16、路由限流 √
微服務架構圖
微服務架構圖
Jeecg Boot 産品功能藍圖
功能藍圖
背景開發環境和依賴
- java
- maven
- jdk8
- mysql
- redis
- 資料庫腳本:jeecg-boot/db/jeecgboot-mysql-5.7.sql
- 預設登入賬号:admin/123456
前端開發環境和依賴
- node
- yarn
- webpack
- eslint
- @vue/cli 3.2.1
- ant-design-vue - Ant Design Of Vue 實作
- vue-cropper - 頭像裁剪元件
- @antv/g2 - Alipay AntV 資料可視化圖表
- Viser-vue - antv/g2 封裝實作
- jeecg-boot-angular 版本
項目下載下傳和運作
- 拉取項目代碼
git clone https://github.com/zhangdaiscott/jeecg-boot.git
cd jeecg-boot/ant-design-jeecg-vue
- 安裝node.js
- 切換到ant-design-jeecg-vue檔案夾下
# 安裝yarn
npm install -g yarn
# 下載下傳依賴
yarn install
# 啟動
yarn run serve
# 編譯項目
yarn run build
# Lints and fixes files
yarn run lint
系統效果
大屏模闆
輸入圖檔說明
輸入圖檔說明
PC端
線上接口文檔
報表
流程
手機端
PAD端
項目擷取:關注公衆号【猿碼天地】回複關鍵字“jeecg” 擷取!
你多學一樣本事,就少說一句求人的話,現在的努力,是為了以後的不求别人,實力是最強的底氣。記住,活着不是靠淚水博得同情,而是靠汗水赢得掌聲。——《寫給程式員朋友》
點贊&在看是最大的支援