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