「開源資訊」開源低代碼開發(fā)平臺:光,一個 Excel 模板搞定一切(開源的低代碼開發(fā)平臺)
來源:https://www.oschina.net/news/117121/lightsbmeu-updated
簡介
是一個開源的Java低代碼開發(fā)平臺,生成基于SpringBoot的Java應用程序源代碼。您只需要編寫一個Excel模板,描述您要生成的數(shù)據(jù)對象,他們之間的關系和您不需要的功能。平臺會生成一切必要的代碼,并自動保存您的Excel模板,方便您以迭代的方式開發(fā)。
項目地址:https://gitee.com/jerryshensjf/LightSBMEU
二進制war包下載地址:https://gitee.com/jerryshensjf/LightSBMEU/attach_files
引子
傳說在阿拉伯半島一個神秘的月亮山洞里,有一盞神奇的神燈,它可以滿足您三個愿望,夜之精靈守護著這盞神燈,和洞里無數(shù)的其他珍寶。此處并非任何人的財產(chǎn),勇敢的人才是神燈的主人。
年輕的程序員阿拉丁找到了這個山洞,在洞穴幽藍的微光下,他摩擦了這盞神燈,于是,夜之精靈退后,一位燈神出現(xiàn)了,他宣稱可以滿足阿拉丁三個愿望,任何愿望。于是,阿拉丁提出了他的第一個愿望:"給我一臺支持Excel的Apple I。"
燈神為難了:"有沒有搞錯,那時候有沒有Excel?"
"我不管,您不是萬能的燈神嗎?"
"那好吧,這些研發(fā)工作我替喬布斯做了?!?/p>
于是,第二個愿望:"給我一套Excel模板。"
最后的愿望是:”生成一套管理系統(tǒng)!"
簡介
第三代動詞算子式代碼生成器:光SBMEU版,采用Maven, EasyUI,SpringBoot 2, MyBatis, MariaDB 技術棧
歡迎大家使用由無垠式,和平之翼和光三代動詞算子式代碼生成器組成的動詞算子式代碼生成器陣列,在我的碼云站點https://gitee.com/jerryshensjf/大家可以找到這些代碼生成器。把他們統(tǒng)統(tǒng)部署在Tomcat中,您可以獲得超過600N的代碼變形能力。
項目圖片:光
光SBMEU 2.0 版項目代號Insight 內(nèi)省
主要包含動態(tài)椰子樹式的目錄結構,動態(tài)域?qū)ο蠛虲ontroller后綴,域?qū)ο髠€性化表名前綴和動詞否定四個功能。
原來,動詞算子式代碼生成器的目錄結構是椰子樹式的,就是路徑前綴是可變的,但是像service和dao等等的子文件夾是固定的,現(xiàn)在,這些子文件夾也是動態(tài)的,所以稱為動態(tài)椰子樹式的文件夾。
動態(tài)域?qū)ο蠛虲ontroller后綴允許產(chǎn)生各種風格的代碼,以適應不同項目組的需要。
域?qū)ο髠€性化表名前綴允許一個項目擁有多種表名前綴,對有些項目組而言,這是他們喜歡的風格。
動詞否定的含義是您可以在Excel模板中的域?qū)ο箜撝蟹穸ǖ裟恍枰膭釉~。這樣,就不需要手工刪除了,大大節(jié)省了工作量,這是我很自豪的功能,我沒有做功能的加法,而是使用了減法,這是非常實用和新穎的。
Insight的Beta3版已經(jīng)實現(xiàn)了動詞否定功能,從此,您可以靈活的定義對象的操作。如果某對象不需要刪除功能,您只需要否定Delete功能,相關代碼就不會在代碼生成物中出現(xiàn)了。
內(nèi)省(Insight)的Beta3版
內(nèi)省的Beta3版已公布。請使用示例DynamicSample,DynamicSample2和DynamicOracleEn作為動態(tài)椰子樹功能樣例測試。請使用DenySample和DenyOracleEn作為動詞否定的樣例測試??稍诒菊靖郊幭螺dBeta3版。 https://gitee.com/jerryshensjf/LightSBMEU/attach_files
現(xiàn)在,Beta3版包含動態(tài)椰子樹式的目錄結構,域?qū)ο蠛虲ontroller后綴可配置和域?qū)ο罂膳渲帽砻熬Y和動詞否定四大功能。
在不同項目組的實踐中,有些代碼的細節(jié)是不一致的,比如,域?qū)ο笥腥讼矚g不帶后綴,有人喜歡使用Entiy或PO,有人喜歡后綴Dto。路徑有人喜歡使用dao,daoimpl,service,serviceimpl,controller,而有人喜歡使用dao,dao.impl,service,service.impl,controller這些變體,內(nèi)省都支持。你甚至可以規(guī)定Controller使用Facade或者Adapter后綴,并定義相關的Controller路徑,內(nèi)省都可以準確的生成無錯的代碼。
內(nèi)省(Insight)的Beta3版的動詞否定功能
有了動詞否定功能,您可以否定掉不需要的功能,但是注意,動詞間有依賴關系,比如,您否定了Clone功能,卻沒有否定CloneAll功能,這時,代碼生成器會報錯,原因是CloneAll依賴Clone動詞完成每一個Clone動作,否定CloneAll而不否定Clone是可以的,反之則有編譯錯誤。
特別的,Beta3版提供了便利的max和max 功能。max功能是最大限度的否定,即除了ListActive,SearchByFieldsByPage和FindById三個默認動詞外全部否定。 max 功能是一種便利的約定,單獨的max 含義和max一樣,但是max ,Add,Update 的含義是除了三個默認動詞外還有Add和Update兩個動詞不被否定,即有5個動詞,即是max 后面的動詞列表不是默認的減法,而是加法。 Beta3版提供了動詞否定的在線文檔。請大家參考。
動詞否定效果圖
可以看見按鈕條在不同配置下的功能伸縮。
光SBMEU 1.5版項目代號Kama 頓悟
此版本是現(xiàn)在的穩(wěn)定版本,請在本站附件處下Karma RC2版本。
功能亮點截圖
Excel和數(shù)據(jù)庫的新玩法
其實,還可以這樣用代碼生成器,把Excel里的數(shù)據(jù)整成代碼生成器的模板格式,填好數(shù)據(jù),生成項目,操作數(shù)據(jù)完成工作,再利用代碼生成物的Excel導出功能得到加工好的數(shù)據(jù),非常方便,使您擁有了在Excel和數(shù)據(jù)庫之間自由遷徙的能力。
前后端分離項目自動生成
第三代動詞算子式代碼生成器:光SBMEU版已支持Vue ElementUI前后端分離項目自動生成。您只需要定義一個后端項目的Excel模板,即可一次生成后端項目和與之配套的前端項目,非常強大,您值得一試。
同時生成前端后端項目的功能截圖
前端項目運行使用方法。
前端項目的使用:首先使用光SBMEU版,生成后端項目和對應的前端項目。運行后端項目。注意,啟動Application.java類啟動SpringBoot的后端項目,您需要首先使用Maven將例程編譯。
將前端項目解壓。如果沒有安裝Nodejs,請先安裝。在解壓的前端界面文件夾內(nèi)運行 npm install命令。運行好后運行npm run dev
一切就緒后訪問 http://localhost:8000/ 即可使用此示例。
代碼生成物導出功能截圖
導出Excel:
導出PDF:
開發(fā)者手冊(“黑客手冊”)截圖
Spring Boot啟動,有圖為證:
相關技術博客
地址:https://my.oschina.net/jerryshensjf