Github Star 36.2K的開源低代碼平臺推薦—JeecgBoot(開源的低代碼開發(fā)平臺)
一、什么是低代碼開發(fā)平臺呢?
低代碼的含義是少寫代碼并不是不寫代碼,面向的用戶群體還是編程人員,傳統(tǒng)的快速開發(fā)平臺、在線開發(fā)平臺、OA 辦公系統(tǒng) 都可以稱為低代碼平臺,那他是怎么幫助你少寫代碼的呢,往下看!
低代碼有哪些節(jié)省代碼的技巧
1、在線開發(fā)能力或者叫在線設(shè)計能力
比如表單設(shè)計器、流程設(shè)計器、大屏設(shè)計器,提供在線設(shè)計能力,不需要手工線下編碼或者線下畫流程。大部分程序員都用過 activiti,他需要通過 ide 安裝插件來畫流程,畫完后再集成到代碼中,這個過程很繁瑣。低代碼平臺經(jīng)過一系列智能化的封裝,讓你省掉這個過程,也就是直接在線可視化設(shè)計,不再需要那復(fù)雜的流程。
表單設(shè)計器、大屏設(shè)計器也是同理,傳統(tǒng)的 OA 審批項(xiàng)目都具備在線設(shè)計工單或者叫表單的能力,但是與現(xiàn)在的表單設(shè)計器的智能化相比就顯的很弱了。 隨著技術(shù)的衍變,很多原來很復(fù)雜的功能,現(xiàn)在都可以簡單實(shí)現(xiàn),也更加易用,擁有更好的體驗(yàn)。
2、通過代碼生成器生成代碼
提供強(qiáng)大的代碼生成器能力,在線配置功能,然后通過代碼生成器一鍵生成,生成的代碼與配置無異,這樣就可以讓開發(fā)者省掉寫增刪改查一些啰嗦又沒意義的工作。
3、平臺級功能的封裝
封裝統(tǒng)一的流程引擎、SAAS 機(jī)制、系統(tǒng)管理模塊、封裝統(tǒng)一的權(quán)限功能,比如實(shí)現(xiàn)企業(yè)級都需要的:行級權(quán)限、列級權(quán)限、數(shù)據(jù)級權(quán)限,有了這個強(qiáng)壯的地基平臺,開發(fā)者就不需要做這個重復(fù)工作,省掉了很大工作量。
4、提供更多可通用的組件
比如常用的 OA 辦公模塊:我的計劃、我的郵件、打卡、文檔管理、通訊錄、聊天、CMS、門戶設(shè)計等等,這些都是企業(yè)級項(xiàng)目上必需的通用模塊,低代碼平臺默認(rèn)提供了這些可復(fù)用模塊,經(jīng)過簡單二次改造就可以快速交付項(xiàng)目,也可以顯著的節(jié)省了工作量。
5、案例總結(jié)
這里咱們簡單看下行業(yè)內(nèi)一個開源的低代碼平臺 JEECG 的介紹,基本涵蓋了剛才提到的幾個節(jié)省代碼的方向。
JeecgBoot 是一款基于代碼生成器的低代碼開發(fā)平臺!前后端分離架構(gòu) SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支持微服務(wù)。強(qiáng)大的代碼生成器讓前后端代碼一鍵生成,實(shí)現(xiàn)低代碼開發(fā)!JeecgBoot 引領(lǐng)新的低代碼開發(fā)模式 (OnlineCoding-> 代碼生成器 -> 手工 MERGE), 幫助解決 Java 項(xiàng)目 70% 的重復(fù)工作,讓開發(fā)更多關(guān)注業(yè)務(wù)。既能快速提高效率,節(jié)省研發(fā)成本,同時又不失靈活性!
JeecgBoot 提供了一系列低代碼模塊,實(shí)現(xiàn)在線開發(fā)真正的零代碼:Online 表單開發(fā)、Online 報表、報表配置能力、在線圖表設(shè)計、大屏設(shè)計、移動配置能力、表單設(shè)計器、在線設(shè)計流程、流程自動化配置、插件能力(可插拔)等等!
JEECG 宗旨是:簡單功能由 OnlineCoding 配置實(shí)現(xiàn),做到零代碼開發(fā);復(fù)雜功能由代碼生成器生成進(jìn)行手工 Merge 實(shí)現(xiàn)低代碼開發(fā),既保證了智能又兼顧靈活;實(shí)現(xiàn)了低代碼開發(fā)的同時又支持靈活編碼,解決了當(dāng)前低代碼產(chǎn)品普遍不靈活的弊端!
JEECG 業(yè)務(wù)流程:采用工作流來實(shí)現(xiàn)、擴(kuò)展出任務(wù)接口,供開發(fā)編寫業(yè)務(wù)邏輯,表單提供多種解決方案: 表單設(shè)計器、online 配置表單、編碼表單。同時實(shí)現(xiàn)了流程與表單的分離設(shè)計(松耦合)、并支持任務(wù)節(jié)點(diǎn)靈活配置,既保證了公司流程的保密性,又減少了開發(fā)人員的工作量。
JeecgBoot 源碼下載
github 地址
- https://github.com/jeecgboot/jeecg-boot
- https://github.com/jeecgboot/jeecgboot-vue3
為什么選擇 JeecgBoot?
開源界 “小普元” 超越傳統(tǒng)商業(yè)平臺。引領(lǐng)低代碼開發(fā)模式 (OnlineCoding-> 代碼生成器 -> 手工 MERGE),低代碼開發(fā)同時又支持靈活編碼, 可以幫助解決 Java 項(xiàng)目 70% 的重復(fù)工作,讓開發(fā)更多關(guān)注業(yè)務(wù)。既能快速提高開發(fā)效率,節(jié)省成本,同時又不失靈活性。
- 采用最新主流前后分離框架(SpringBoot Mybatis-plus Ant-Design Vue),容易上手;代碼生成器依賴性低,靈活的擴(kuò)展能力,可靈活實(shí)現(xiàn)二次開發(fā);
- 開發(fā)效率很高,采用代碼生成器,單表數(shù)據(jù)模型和一對多 (父子表)、樹列表等數(shù)據(jù)模型,增刪改查功能自動生成,菜單配置直接使用(前端代碼和后端代碼都一鍵生成);
- 代碼生成器提供強(qiáng)大模板機(jī)制,支持自定義模板風(fēng)格。目前提供四套風(fēng)格模板(單表兩套、一對多兩套)
- 封裝完善的用戶、角色、菜單、組織機(jī)構(gòu)、數(shù)據(jù)字典、在線定時任務(wù)等基礎(chǔ)功能。強(qiáng)大的權(quán)限機(jī)制,支持訪問授權(quán)、按鈕權(quán)限、數(shù)據(jù)權(quán)限、表單權(quán)限等
- 零代碼在線開發(fā)能力,在線配置表單、在線配置報表、在線配置圖表、在線設(shè)計表單
- 常用共通封裝,各種工具類 (定時任務(wù),短信接口,郵件發(fā)送,Excel 導(dǎo)入導(dǎo)出等), 基本滿足 80% 項(xiàng)目需求
- 簡易 Excel 導(dǎo)入導(dǎo)出,支持單表導(dǎo)出和一對多表模式導(dǎo)出,生成的代碼自帶導(dǎo)入導(dǎo)出功能
- 集成簡易報表工具,圖像報表和數(shù)據(jù)導(dǎo)出非常方便,可極其方便的生成圖形報表、pdf、excel、word 等報表;
- 采用前后分離技術(shù),頁面 UI 精美,針對常用組件做了封裝:時間、行表格控件、截取顯示控件、報表組件,編輯器等等
- 查詢過濾器:查詢功能自動生成,后臺動態(tài)拼 SQL 追加查詢條件;支持多種匹配方式(全匹配 / 模糊查詢 / 包含查詢 / 不匹配查詢);
- 數(shù)據(jù)權(quán)限(精細(xì)化數(shù)據(jù)權(quán)限控制,控制到行級,列表級,表單字段級,實(shí)現(xiàn)不同人看不同數(shù)據(jù),不同人對同一個頁面操作不同字段
- 在線配置報表(無需編碼,通過在線配置方式,實(shí)現(xiàn)曲線圖,柱狀圖,數(shù)據(jù)等報表)
- 頁面校驗(yàn)自動生成 (必須輸入、數(shù)字校驗(yàn)、金額校驗(yàn)、時間空間等);
- 提供單點(diǎn)登錄 CAS 集成方案,項(xiàng)目中已經(jīng)提供完善的對接代碼
- 表單設(shè)計器,支持用戶自定義表單布局,支持單表,一對多表單、支持 select、radio、checkbox、textarea、date、popup、列表、宏等控件
- 專業(yè)接口對接機(jī)制,統(tǒng)一采用 restful 接口方式,集成 swagger-ui 在線接口文檔,Jwt token 安全驗(yàn)證,方便客戶端對接
- 接口安全機(jī)制,可細(xì)化控制接口授權(quán),非常簡便實(shí)現(xiàn)不同客戶端只看自己數(shù)據(jù)等控制
- 高級組合查詢功能,在線配置支持主子表關(guān)聯(lián)查詢,可保存查詢歷史
- 提供各種系統(tǒng)監(jiān)控,實(shí)時跟蹤系統(tǒng)運(yùn)行情況(監(jiān)控 Redis、Tomcat、jvm、服務(wù)器信息、請求追蹤、SQL 監(jiān)控)
- 消息中心(支持短信、郵件、微信推送等等)
- 集成 Websocket 消息通知機(jī)制
- 提供 APP 發(fā)布方案:
- 支持多語言,提供國際化方案;
- 數(shù)據(jù)變更記錄日志,可記錄數(shù)據(jù)每次變更內(nèi)容,通過版本對比功能查看歷史變化
- 平臺 UI 強(qiáng)大,實(shí)現(xiàn)了移動自適應(yīng)
- 平臺首頁風(fēng)格,提供多種組合模式,支持自定義風(fēng)格
- 提供簡單易用的打印插件,支持谷歌、IE 瀏覽器等各種瀏覽器
- 示例代碼豐富,提供很多案例參考
- 采用 maven 分模塊開發(fā)方式
- 支持菜單動態(tài)路由
- 權(quán)限控制采用 RBAC(Role-Based Access Control,基于角色的訪問控制)