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