基于GEF和EMF的JavaEE快速開發(fā)工具設(shè)計
3.1.2 代碼生成的實現(xiàn)
jStudio主要利用了EMF中的JET(java emittertemplates)來進行代碼生成,JET是一個與JSP非常類似,根據(jù)定制的模板生成最終文本代碼的工具。JET與JSP使用相同的語法,在后臺都被編譯成Java程序;二者都可以接受輸入的對象作為參數(shù),都可以在代碼中插入字符串值,可以直接使用Java代碼執(zhí)行循環(huán)、聲明變量或執(zhí)行邏輯流程控制(腳本)。
在jStudio中,首先根據(jù)基于Struts+Spring+Hibernate框架的JavaEE應(yīng)用體系架構(gòu)和用戶最終代碼的需求,分別定義了JSP頁面展示層、Struts控制層、Spring業(yè)務(wù)邏輯層和Hibernate數(shù)據(jù)持久層的多達21個模板文件;然后,EMF再將這些模板文件轉(zhuǎn)換為一一對應(yīng)的Java類;最后,分別調(diào)用這些Java類中的generate()方法,生成最終的基于Struts+Spring+Hibernate框架的JavaEE應(yīng)用系統(tǒng)代碼。經(jīng)過以上3個步驟生成的代碼在jStudio編譯、發(fā)布和部署后就能順利地運行,用戶在瀏覽器中輸入系統(tǒng)地址就能對每個業(yè)務(wù)模型對象進行增刪改查的操作。
3.2 工具的運用
jStudio工具的使用較為方便,容易上手,只需簡單的6步操作就可完成。第1步,通過向?qū)Ы⒑缶Y為.mda的源文件;第2步,使用jStudio的編輯器打開后綴為.mda源文件;第3步,在源文件中創(chuàng)建業(yè)務(wù)模型對象,并設(shè)置好對象間的關(guān)聯(lián)關(guān)系;第4步,生成業(yè)務(wù)模型對象的所有代碼;第5步,生成數(shù)據(jù)庫表;第6步,對生成的程序打包、發(fā)布和部署。最后,在IE瀏覽器的地址欄上輸入地址,即可訪問生成的系統(tǒng)。
4 結(jié) 語
目前,市場中圖形化、可視化的生成工具較少,基于Struts+Spring+Hibernate框架的代碼工具市場開發(fā)不多,難以滿足JavaEE應(yīng)用開發(fā)的實際需要。使用快速開發(fā)工具生成代碼可以大幅度提高軟件開發(fā)的質(zhì)量和生產(chǎn)率。研究結(jié)果表明,本文闡述的快速開發(fā)工具iStduio是一個基于GEF和EMF技術(shù),可以生成基于Struts+Spring+Hibernate框架的JavaEE應(yīng)用代碼生成工具。jStduio使用簡單、方便,功能強大,能節(jié)省開發(fā)人員60%左右的代碼量。因此將來勢必會受到眾多JavaEE應(yīng)用開發(fā)人員的青睞。
評論