項目介紹
JeecgBoot是一款基於代碼生成器的低代碼平台,開源界“小普元”超越傳統商業級平台!采用前后端分離架構:SpringBoot 2.x,Ant Design&Vue,Mybatis-Plus,Shiro,JWT。強大的代碼生成器讓前后端代碼一鍵生成,無需寫任何代碼! 引領新的低代碼開發模式(OnlineCoding模式-> 代碼生成器模式-> 手工MERGE智能開發),幫助Java項目解決70%的重復工作,讓開發更多關注業務邏輯。既能快速提高開發效率,幫助公司節省成本,同時又不失靈活性。JeecgBoot還獨創在線開發模式:在線表單、在線報表、在線圖表、在線工作流等等。
當前版本:v_2.3 | 2020-09-14
源碼下載
- https://github.com/zhangdaiscott/jeecg-boot
- https://gitee.com/jeecg/jeecg-boot
技術文檔
- 在線演示:http://boot.jeecg.com
- 視頻教程:實戰入門視頻
- 技術文檔:http://doc.jeecg.com
- 常見問題: http://bbs.jeecg.com
- QQ群:②769925425、③816531124、①284271917(滿)
升級日志
JeecgBoot是里程碑SpringCloud微服務版,支持單體和微服務自由切換;提供新行編輯表格JVXETable,輕松滿足各種復雜ERP布局,擁有更高的性能、更靈活的擴展、更強大的功能。
單體升級為微服務文檔: http://doc.jeecg.com/2043902
重大功能
- 1、JAVA后端項目重構,提供輕松切換微服務SpringCloud方案,支持單體和微服務自由切換,十分鍾搞定
- 2、Online表單權限配置智能化,讓權限授權更加簡單易用。
- 3、 新行編輯表格組件 JVXETable 推出,更強大的性能、支持靈活自定義組件,支持各種復雜業務場景,支持各種復雜布局,輕松滿足ERP項目復雜布局要求、提供各種復雜布局場景示例。
- 4、Token安全漏洞嚴重問題解決
平台優化升級
-
JAVA后端結構改造支持微服務,增加SpringCloud Alibaba支持,支持微服務和單體自由切換
-
swagger接口返回結果支持泛型
-
JVXETable新列行編輯表格組件,並提供多套JVXETable示例
-
升級mysql驅動依賴
-
登錄登出日志記錄人員
-
實體類主鍵策略修改,IdType.IDWORKERSTR全部改為IdType.ASSIGN_ID
-
提供服務器端docker發布腳步,docker-compose-server.xml
-
【代碼生成器】新增一套模板:一對多tab風格
-
【代碼生成器】樹列表支持條件查詢,支持批量刪除
-
【代碼生成器】生成代碼支持按列排序
-
【日志改造】日志按模塊類型記錄信息
-
Apache Shiro漏洞問題解決、代碼生成器升級依賴
-
用戶管理,邏輯刪除字段類型是int,帶引號會導致數據庫不兼容處理
-
swagger-ui 保持登錄狀態修改了,放開Swagger-ui
-
消息推送采用模板消息freemarker解析模板
-
用戶表增加設備id,支持uniapp移動端消息推送
-
開源反饋多租戶系列問題處理
-
行編輯示例合計功能bug修改
-
【gitee#I1N3H1】eidtTable的值改變事件
-
JSelectBizComponent組件切換頁數值問題修復
-
增加下拉搜索字典項監聽改變事件
-
左側菜單欄縮放窗口后無法顯示 issues#1498
-
修復路由傳參的值傳送到jinput框被前后各截取了一位 #1336
-
[LOWCOD-774]切換頂部模式顯示問題
-
popup 支持翻頁多選bug
-
登錄文字寫錯修正
ONLINE 優化升級
- Online 一對多ERP風格權限存在問題
- Online操作加一些操作日志
- Online字典表加權限控制機制邏輯
- Online導入表單功能,排除那些表前綴支持配置
- Online權限改造,更加簡單易用
- Online 樹列表刪除時刪除子節點數據
- Online 表單,只修改字段的默認值,執行同步不會變更數據庫邏輯修復
- Online 表單添加loaded事件
- Online 視圖按鈕權限問題
- Online 新增處理子表是否只讀
- Online 表單子表唯一校驗支持
- Online 子表支持修改控件長度 【gitee/I1P2UM】
- Online菜單權限 內嵌風格 邏輯缺失
- Online 數據權限問題 in查詢問題LOWCOD-782
- Online表單開發,普通同步報錯 LOWCOD-830
- Online 新增時間字段控件
- Online 查詢默認值未生效修復
- Online href 跳轉頁面支持參數接收
Issues處理
- 控件默認值是“#{sysUserName}”,但是功能測試時控件沒有默認值issues/I1QEMS
- ERP模板界面,如果超時,點擊重新登錄,無法跳轉到登錄界面issues/I1PQ0W
- 在線表單開發中數據表的某一字段的默認值設為#{sysUserName}時,無法獲取到值。issues/1639
- 控件默認值#{sysUserName}無法顯示issues/1544
- Online表單開發,點擊“新增”按鈕,是否樹:選擇是,頁面控制台報錯 issues/I1BHXG
- 2.2.1的ERP模板不可用 issues/I1OAM9
- 關於在線開發中的表單開發和報表配置的問題issuse/I1NV8M
- Bug:2.2.1版本 Online排序功能失效issues/1450
- 下載最新開源代碼,本地測試,online表單開發,勾上“是否排序”,頁面無排序功能issues/I1N6Z1
- controller方法參數列表中帶有HttpServletRequest類型參數,執行完成后,保存日志報錯issues/1394
- Bug:如果請求參數有request,@AutoLog自動日志 會報異常issues/1413
- radis緩存未更新 導致 修改主表,子表關聯數據未更新issues/1436
- 登錄登出日志沒有記錄人員issues/I1NBZO
- Online表單開發,建議增加時間控件issues/1362
- online前端模板變量有誤issues/1470
- 內嵌子表單顯示字段越多,多選框及其序號寬度也會增加issues/1442
- 建議:優化架構issues/1377
- 自定義組件,建議支持多條件查詢issues/1433
- popup多選的問題issues/I1OERG
- components文件夾Table組件showPagination參數問題issues/1467
- 富文本組件在tab頁面切換的時候失效issues/1462
- 定時任務調用 SysBaseApiImpl.addLog 記錄日志報錯issues/1472
- 建議升級shiro依賴 Apach Shiro官方披露其cookie持久化參數rememberMe加密算法存在漏洞issues/1473
- Apache Shiro權限繞過issues/1516
- 優化建議:/thirdLogin/{source}/callback 接口在簽名校驗失敗時返回失敗的標識碼issues/1441
- online表單如何指定字段進行排序 或是否支持多個字段進行排序 issues/1411
- 子表怎么修改控件長度issues/I1P2UM
- JEditableTable.vue卡頓原因之一buildPropsissues/1177
- JEditableTable 用 slot的形式綁定一個JTreeSelect 如何實現雙向綁定issues/984
- 谷歌瀏覽器開發者模式下,點擊屏幕調試后左側菜單欄收起,且折疊圖標失效issues/1584
- 前端問題issues/1602
- 漏洞:其他部門可以新增管理員角色issues/1538
- jar 包上傳到服務器后 autopoi 讀取不到excel模版文件issues/1505
- 左側菜單欄縮放窗口后無法顯示issues/1498
- 怎么對表格和編輯表格的表頭進行自定義樣式修改issues/I1RBGF
- online-導入數據庫表issues/I1R43G
- 頂部導航,偶爾會無法顯示收起按鈕issues/I1FKIP
- side menu響應式有bugissues/1619
- 高級查詢構造器條件值是下拉框並且下拉框項目較多時檢錯報錯issues/1517
- 自定義控件: j-image-upload 問題issues/I1PRAE
- 數據權限為,單位A到Z的人員只能增刪查改自己單位的錄入的數據,單位A到Z的上級甲可以查看單位A的數據並修改。sysorgcode會更新到更新人所屬部門issues/I1PRTU
- 支持自定義sql 查詢條件 引入#{sysusercode} 等用戶查詢條件 能否匹配上權限數據issues/1547
- 配置數據權限為包含時,條件為多個時,sql語句報錯issues/1541
- 【bug】postgresql 查看已刪除用戶類型錯誤issues/1642
- 前端切換標簽不會保存原有狀態及數據issues/1369
- 導出excel實體反射,時間格式轉換錯誤issues/1573
- 表單開發頁面bugissues/I1RMJA
- 加入多租戶管理后數據表無法正常更新issues/1640
- 表單主附表設計issues/1481
- 配置字段href,跳轉頁面issues/I1QP0Y
- excel中的數據使用函數計算的列導入報錯 Cannot get a text value from a numeric formula cell.issues/I1QDHN
- 如果進行在線表單開發的一對多對多的設計?issues/I1PEB2
- 登錄頁面錯別字issues/993
- 在線文檔中不能支持對List的入參 issues/1246
- online表單開發 填寫表明時只要數據庫中有一個庫中存在這個表就會提示表名已存在issues/I1TWWK
- online 表單開發 表明已經存在issues/I1TWOO
- Online表單開發,普通同步報錯issues/1565
- Online表單開發(表名已存在)issues/1665
- 前端頁面放開個人頁后console報錯issues/1577
- 跨域問題issues/I1TAAP
- eidtTable的值改變事件issues/I1N3H1
- 2.2.1版本bug,默認主題父子表生成的代碼,如果先點擊編輯,后點擊新增,新增頁面明細上會有之前編輯頁面上的數據issues/1454
- JS增強獲取表單字段為undefinedissues/1388
- 表格合計功能bugissues/1399
- radis緩存未更新 導致 修改主表,子表關聯數據未更新issues/1436
- JSelectBizComponent 組件存在bugissues/1425
- online表單下拉選擇,校驗字段,字典Table 寫上where條件后,在線測試沒問題,生成代碼后,出現sql注入問題issues/1423
- JEditableTable樣式問題issues/I1LNK6
- Result.okissues/1487
- 隸屬多個部門,登錄頁面輸入正確,點擊登錄后,彈出部門選擇,不選,直接刷新網頁,直接進入dashboard了issues/1449
- 二級下拉聯動組件 一級只出來一個值issues/1652
- 多租戶環境下,導入無法獲取租戶idissues/1647
- 消息模板建議使用freemarkderissues/1610
- online開發href跳轉到其他表單對應的詳情頁issues/1480
- v2.2.0版本,按鈕type為danger時,看不到文字issues/1286
- 后台報空指針issues/I1OAY9
- 按鈕/權限issues/I1OUGU
- Online配置的菜單,怎么查看操作日志issues/I1MQLC
- JEditableTable樣式問題issues/I1LNK6
- 聚合路由錯誤issues/1444
- 數據字典項 Redis 緩存沖突issues/1522
- dictText名稱解析報錯,想問下這個問題如何解決,需要解析的表是單表(樹)issues/1634
- 消息模板類型建議添加PushPlusissues/1611
- 怎么添加清除功能issues/I1QYF2
- JeecgBootExceptionHandler無法捕獲AuthenticationExceptiony異常issues/I17UAS
- 如果是tomcat部署項目的話,系統監控-》性能監控-》tomcat信息查詢不到issues/I181YO
- idea運行服務,Tomcat監控信息session值為0issues/I1C44Z
- JEditableTable幫助文檔沒有更新(找不到FormTypes.file)issues/I1OL4S
- edit表格加的插槽怎么做表單驗證,或者自帶的FormTypes.input怎么做自定義事件issues/I1OVFB
- online表單下拉選擇,校驗字段,字典Table 寫上where條件后,在線測試沒問題,生成代碼后,出現sql注入問題issues/1423
- editTable使用問題issues/I1M48Q
- 登錄系統之后,用戶如果沒有權限,會直接進入404,這個怎么能設置登錄進來只能默認打開的只有首頁?issues/I1O6D1
- online表單開發,生成主附表,配置菜單+auto,無權限訪問(操作)issues/I1PEXA
- 實體內有多個表字典注解的時候報錯,導致翻譯失敗issues/1534
- AutoPoi多表頭導出,會多出一列空白列issues/1513
- tinymce第一次打開正常,頁面切換后再切換回來內容空白且無法編輯issues/1507
- 抽屜式界面下方有一點奇怪的顯示issues/1532
- 頭部菜單樣式,右上角圖標顏色重合issues/I1RJ1Y
- 彈窗全屏組件issues/I1TL8O
- 【bug】in 類型多值查詢 不適配postgresql issues/1671
- QueryGenerator.installMplus()未處理@TableField(exist = false)導致構建查詢出現column "xxx" does not existissues/1680
- Online在線表單開發,在查詢配置中勾選“是否啟用”,將會取消選中“頁面配置”中的是否查詢選項issues/1669
- online表單開發功能問題issues/1654
- online開發 popup 怎么顯示名稱 存儲IDissues/1335
- 返回值問題:this.$refs.editableTable.getValuesSync()issues/1675
- that.changeOptions在表單初始化的時候無法初始化下拉框數據issues/I1TGVX
為什么選擇 JeecgBoot?
開源界“小普元”超越傳統商業企業級開發平台。引領新的開發模式(Online Coding- > 代碼生成器 - > 手工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,基於角色的訪問控制)
系統模塊
├─系統管理
│ ├─用戶管理
│ ├─角色管理
│ ├─菜單管理
│ ├─權限設置(支持按鈕權限、數據權限)
│ ├─表單權限(控制字段禁用、隱藏)
│ ├─部門管理
│ ├─我的部門(二級管理員)
│ └─字典管理
│ └─分類字典
│ └─系統公告
│ └─職務管理
│ └─通訊錄
│ └─多租戶管理
├─消息中心
│ ├─消息管理
│ ├─模板管理
├─智能化功能
│ ├─代碼生成器功能(一鍵生成前后端代碼,生成后無需修改直接用,絕對是后端開發福音)
│ ├─代碼生成器模板(提供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圖表模板配置
│ ├─高級表單設計器
│─流程模塊功能 (暫不開源)
│ ├─流程設計器
│ ├─在線表單設計
│ └─我的任務
│ └─歷史流程
│ └─歷史流程
│ └─流程實例管理
│ └─流程監聽管理
│ └─流程表達式
│ └─我發起的流程
│ └─我的抄送
│ └─流程委派、抄送、跳轉
│ └─。。。
└─其他模塊
└─更多功能開發中。。
系統截圖
大屏數據模板
PC端
手機端
PAD端
歡迎吐槽,歡迎star~