天天看點

JeecgBoot低代碼開發架構使用心得

作為一名合格的軟體開發人員,最怕重複同樣的操作,浪費太多學習時間,都花在複制粘貼上面去。很榮幸無意間在碼雲網站了解到jeecg-boot平台,

讓我們節省了很多時間,尤其對于我從事公司來講,時間就是公司生存的根本,人員配置少,讓你一個人負責項目,短時間拿出原型,還需要獨立進行深層次的開發。

如果每項目都要搭建一次架構,對于創業公司來将無疑是緻命的。

Jeecg-boot産品的出現,是中小型公司的福音,同時也是程式員的學習參考非常棒的開源項目。

JeecgBoot低代碼開發架構使用心得

JeecgBoot 是一款基于代碼生成器的

低代碼

開發平台!前後端分離架構 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支援微服務。強大的代碼生成器讓前後端代碼一鍵生成,實作低代碼開發! JeecgBoot 引領新的低代碼開發模式(OnlineCoding-> 代碼生成器-> 手工MERGE), 幫助解決Java項目70%的重複工作,讓開發更多關注業務。既能快速提高效率,節省研發成本,同時又不失靈活性!

JeecgBoot 提供了一系列

低代碼子產品

,實作線上開發

真正的零代碼

:Online表單開發、Online報表、報表配置能力、線上圖表設計、大屏設計、移動配置能力、表單設計器、線上設計流程、流程自動化配置、插件能力(可插拔)等等!

JEECG宗旨是:

 簡單功能由OnlineCoding配置實作,做到

零代碼開發

;複雜功能由代碼生成器生成進行手工Merge 實作

低代碼開發

,既保證了

智能

又兼顧

靈活

;實作了低代碼開發的同時又支援靈活編碼,解決了目前低代碼産品普遍不靈活的弊端!

JEECG業務流程:

 采用工作流來實作、擴充出任務接口,供開發編寫業務邏輯,表單提供多種解決方案: 表單設計器、online配置表單、編碼表單。同時實作了流程與表單的分離設計(松耦合)、并支援任務節點靈活配置,既保證了公司流程的保密性,又減少了開發人員的工作量。

适用于在任何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、Skywalking
  • 資料庫連接配接池:阿裡巴巴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 - 列印

項目啟動通路成功後遇到一個錯誤:

JeecgBoot低代碼開發架構使用心得

shiro安全架構啟動成功後,還是會報bug錯誤

重點說一下改進建議:

JeecgBoot屬于平台級産品,每次更新改動内容較多,目前做不到平滑更新。作為粉絲,每次有新版本釋出或者重大問題修複,是非常希望能夠平滑更新功能的

1,代碼品質保障,單元測試(需要寫單元測試,壓力測試,以及修複bug)

打開JeecgBoot工程,僅有兩個單元測試,而且不能夠直接運作通過,需要準備好依賴環境。

單元測試好處,歡迎補充:

1) 保證代碼品質,及早發現bug。

2) 修改過的bug,避免再次發生。

3) 改動代碼時,避免引入新bug。

4) 回歸測試,保障功能相容。

2.進行子產品化、元件化開發,将原先開源版本system裡面闆塊盡量剝離處理,保留簡潔版的背景管理功能。

JeecgBoot低代碼開發架構使用心得

3.文檔在開源項目中比較詳細,對于是否自模組化塊指引或者自模組化塊與system,common之間的引用依賴文檔說明還不夠。

4.代碼調整 在實體類entity中,加入 import lombok.Data; 引入@Data,去除代碼中大量的get和set方法

import com.baomidou.mybatisplus.annotation.TableLogic; 引入@TableLogic,進行預設delFlag

5.window系統下使用本地環境開發啟動項目消耗記憶體太大,前後端啟動特别卡頓,是否能優化一下

6.

  • 支援采用緩存機制
  • 支援現流行的auth2,可進行第三方接入
  • 支援企業級cas單點登入,提高企業級多系統之間的跳轉

7.建議采用阿裡巴巴規範插件開發

8.資料庫連接配接由druid改為Hikari,因為springboot 2.0 預設連接配接池就是Hikari。

最後總結一下:

jeecg-boot 明顯的提高了我們團隊的開發效率。

jeecg-boot 全套技術棧符合目前技術趨勢,學習文檔完善,是一個非常值得大家學習的開源項目。

jeecg-boot 社群活躍,碰到問題基本上都能及時解決,有價值的問題最好再去 github 提 issue。

最後,希望 jeecg-boot 的代碼品質更加優秀,希望 jeecg-boot 成為2021最最最最受歡迎的開源項目!