專(zhuān)利名稱(chēng):一種基于ssh框架的代碼自動(dòng)生成方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)的代碼生成技術(shù),尤其是涉及一種基于SSH框架的代碼自動(dòng)生成方法。
背景技術(shù):
隨著計(jì)算機(jī)及軟件技術(shù)的快速發(fā)展,軟件產(chǎn)品的需求一直處于增長(zhǎng)的狀態(tài),面對(duì)如此龐大的軟件需求,如何提高軟件的生產(chǎn)效率,降低軟件開(kāi)發(fā)的周期與成本,便成為軟件開(kāi)發(fā)人員乃至整個(gè)行業(yè)所關(guān)注的焦點(diǎn)。在現(xiàn)有的軟件開(kāi)發(fā)過(guò)程中,主要采用更高級(jí)的開(kāi)發(fā)語(yǔ)言、代碼復(fù)用或代碼生成組件來(lái)提高開(kāi)發(fā)效率。例如,目前比較流行的Javascript框架jquery,它是輕量級(jí)的js庫(kù)(壓縮后只有21k),提供成熟的插件供用戶選擇,并能使用戶的html頁(yè)保持代碼和html內(nèi)容分離。但是,現(xiàn)有技術(shù)在個(gè)性化及靈活性方面存在一定的局限性:一是架構(gòu)或版本不夠靈活;二是無(wú)法根據(jù)數(shù)據(jù)庫(kù)自動(dòng)生成業(yè)務(wù)對(duì)象的所有源代碼,三是用戶無(wú)法自定義代碼模板。
發(fā)明內(nèi)容
本發(fā)明是鑒于上述技術(shù)問(wèn)題而產(chǎn)生的。本發(fā)明的一個(gè)目的是提出一種基于SSH框架的代碼自動(dòng)生成方法。在一個(gè)方面中,根據(jù)本發(fā)明的基于SSH框架的代碼自動(dòng)生成方法包括步驟:A、自定義相關(guān)信息,其包括自定義代碼模板和數(shù)據(jù)庫(kù)信息;B、配置數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑;C、根據(jù)步驟A中自定義的代碼模板和數(shù)據(jù)庫(kù)信息,選擇不同的代碼模板及需要生成的數(shù)據(jù)庫(kù)對(duì)象;D、根據(jù)步驟B中的配置信息以及在步驟C中所選擇的代碼模板及數(shù)據(jù)庫(kù)對(duì)象,自動(dòng)生成源代碼。在這個(gè)方面中,其中步驟D進(jìn)一步包括步驟:D1、步驟A中所自定義的代碼模板引用步驟B中的數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑等配置信息;D2、根據(jù)配置變量讀取數(shù)據(jù)庫(kù)相關(guān)信息,建立與數(shù)據(jù)庫(kù)表結(jié)構(gòu)對(duì)應(yīng)的模型;D3、根據(jù)自定義的代碼模板自動(dòng)生成基于SSH框架的前后臺(tái)代碼及相應(yīng)配置XML配置文件,并自動(dòng)拷貝到步驟B中配置的相應(yīng)目錄。在這個(gè)方面中,其中步驟A進(jìn)一步包括:自定義前臺(tái)源代碼模板和后臺(tái)源代碼模板,并且其中數(shù)據(jù)庫(kù)信息包括數(shù)據(jù)庫(kù)建表語(yǔ)句及別名。在這個(gè)方面中,其中數(shù)據(jù)庫(kù)參數(shù)包括數(shù)據(jù)庫(kù)連接URL、數(shù)據(jù)庫(kù)用戶名、數(shù)據(jù)庫(kù)密碼。通過(guò)本發(fā)明,用戶只需定義業(yè)務(wù)對(duì)象的數(shù)據(jù)庫(kù)結(jié)構(gòu)、相關(guān)數(shù)據(jù)庫(kù)配置及SSH版本信息,即可生成用戶所需的源代碼,由此節(jié)省了軟件開(kāi)發(fā)時(shí)間,極大地提高了軟件開(kāi)發(fā)效率,同時(shí)代碼風(fēng)格得到統(tǒng)一,實(shí)現(xiàn)了代碼的快速開(kāi)發(fā)。
結(jié)合隨后的附圖,從下面的詳細(xì)說(shuō)明中可顯而易見(jiàn)的得出本發(fā)明的上述及其他目的、特征及優(yōu)點(diǎn)。在附圖中:圖1示出了根據(jù)本發(fā)明的基于SSH框架的代碼自動(dòng)生成方法的流程圖;圖2示出了根據(jù)本發(fā)明的基于SSH框架的代碼自動(dòng)生成方法的子流程圖。
具體實(shí)施例方式為了更全面地理解本發(fā)明及其優(yōu)點(diǎn),下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)地說(shuō)明。首先,參考圖1,對(duì)根據(jù)本發(fā)明的基于SSH框架的代碼自動(dòng)生成方法進(jìn)行詳細(xì)地說(shuō)明。如圖1所示,根據(jù)本發(fā)明的基于SSH框架的代碼自動(dòng)生成方法包括:步驟S102:自定義相關(guān)信息,其包括自定義代碼模板和數(shù)據(jù)庫(kù)信息。具體地說(shuō),自定義代碼模板包括:(1)自定義前臺(tái)源代碼模板,其例如包括Peer、Action、Form、Service、Dao、JunitTest代碼模板等等;(2)自定義后臺(tái)源代碼模板,其例如包括查詢、增加、修改、詳情、刪除頁(yè)面模板等。通過(guò)自定義代碼模板,可以自動(dòng)生成用戶需要的源代碼。數(shù)據(jù)庫(kù)信息包括數(shù)據(jù)庫(kù)建表語(yǔ)句及別名。別名主要用于生成查詢、增加、修改、詳情、刪除頁(yè)面各屬性的名稱(chēng);通過(guò)屬性名稱(chēng),自動(dòng)將數(shù)據(jù)庫(kù)表結(jié)構(gòu)字段與該屬性的實(shí)際內(nèi)容對(duì)應(yīng)。步驟S104:配置數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑。具體地說(shuō),數(shù)據(jù)庫(kù)類(lèi)型例如包括Oracle、Mysql、SQLServer、Sybase、Db2等等。數(shù)據(jù)庫(kù)參數(shù)例如包括數(shù)據(jù)庫(kù)連接URL、數(shù)據(jù)庫(kù)用戶名、數(shù)據(jù)庫(kù)密碼。步驟S106:根據(jù)步驟S102中自定義的代碼模板和數(shù)據(jù)庫(kù)信息,選擇不同的代碼模板及需要生成的數(shù)據(jù)庫(kù)對(duì)象。步驟S108:根據(jù)步驟S104中的配置信息以及在步驟S106中所選擇的代碼模板及數(shù)據(jù)庫(kù)對(duì)象,自動(dòng)生成源代碼。具體地說(shuō),如圖2所示,該步驟進(jìn)一步包括:步驟802:步驟S102中所自定義的代碼模板引用步驟S104中的數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑等配置信息;步驟804:根據(jù)配置變量讀取數(shù)據(jù)庫(kù)相關(guān)信息,建立與數(shù)據(jù)庫(kù)表結(jié)構(gòu)對(duì)應(yīng)的模型;步驟806:根據(jù)自定義的代碼模板自動(dòng)生成基于SSH框架的前后臺(tái)代碼及相應(yīng)配置XML配置文件,并自動(dòng)拷貝到步驟S104中配置的相應(yīng)目錄。下面,以倉(cāng)庫(kù)配置信息為例,對(duì)此進(jìn)行說(shuō)明。步驟1:自定義SSH框架的前后臺(tái)以及SSH框架代碼里面的配置xml文件,SSH框架代碼包java、jsp、html、js、xml等文件。步驟2:配置數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑。步驟3:通過(guò)數(shù)據(jù)庫(kù)工具創(chuàng)建倉(cāng)庫(kù)配置信息,即選擇數(shù)據(jù)庫(kù)參數(shù)。步驟4:啟動(dòng)自動(dòng)代碼生成工具,并執(zhí)行“gen倉(cāng)庫(kù)配置信息表名”命令,自動(dòng)根據(jù)模板在步驟2中的源代碼保存路徑,生成前后臺(tái)及xml配置文件等與倉(cāng)庫(kù)配置信息功能相關(guān)的源代碼。至此,代碼自動(dòng)生成過(guò)程結(jié)束。通過(guò)以上描述可知,借助于本發(fā)明,可以獲得以下優(yōu)點(diǎn):(I)簡(jiǎn)潔實(shí)用:用戶只需要一次性定制代碼模板、配置參數(shù)即可,以后每次自動(dòng)生成源代碼時(shí),可重復(fù)利用;首先定義對(duì)應(yīng)的表結(jié)構(gòu),再選擇代碼模板及相關(guān)配置信息即可自動(dòng)生成源代碼;(2)靈活性強(qiáng):可以針對(duì)不同的Spring、Struts、Hibernate版本,自動(dòng)生成不同版本的源代碼;同時(shí)支持Oracle、Mysql、SQLServer、Sybase、Db2等目前主流的數(shù)據(jù)庫(kù);(3)高效:可以大大縮短開(kāi)發(fā)時(shí)間、節(jié)省開(kāi)發(fā)成本;(4)代碼風(fēng)格統(tǒng)一:通過(guò)模板生成的代碼結(jié)構(gòu)一致、風(fēng)格統(tǒng)一,便于維護(hù)。綜上所述,本發(fā)明以低成本完成了基于SSH框架的源代碼自動(dòng)生成功能,簡(jiǎn)單實(shí)用,靈活性強(qiáng),良好的附加功能擴(kuò)充性,以及便捷的操作使用方式。用戶可以方便的自定義源代碼模板,配置不同的數(shù)據(jù)庫(kù)參數(shù),選擇不同的數(shù)據(jù)庫(kù)對(duì)象生成對(duì)應(yīng)的源代碼,達(dá)到源代碼模板自定義和個(gè)性化選擇不同數(shù)據(jù)庫(kù)的目的。同時(shí),極大的提高了軟件的生產(chǎn)效率,降低了軟件的開(kāi)發(fā)周期的開(kāi)發(fā)成本。此外,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)可顯而易見(jiàn)的得出其他優(yōu)點(diǎn)和修改。因此,具有更廣方面的本發(fā)明并不局限于這里所示出的并且所描述的具體說(shuō)明及示例性實(shí)施例。因此,在不脫離由隨后權(quán)利要求及其等價(jià)體所定義的一般發(fā)明構(gòu)思的精神和范圍的情況下,可對(duì)其做出各種修改。
權(quán)利要求
1.一種基于SSH框架的代碼自動(dòng)生成方法包括步驟: A、自定義相關(guān)信息,其包括自定義代碼模板和數(shù)據(jù)庫(kù)信息; B、配置數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑; C、根據(jù)步驟A中自定義的代碼模板和數(shù)據(jù)庫(kù)信息,選擇不同的代碼模板及需要生成的數(shù)據(jù)庫(kù)對(duì)象; D、根據(jù)步驟B中的配置信息以及在步驟C中所選擇的代碼模板及數(shù)據(jù)庫(kù)對(duì)象,自動(dòng)生成源代碼。
2.根據(jù)權(quán)利要求1的方法,其中步驟D進(jìn)一步包括步驟: D1、步驟A中所自定義的代碼模板引用步驟B中的數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑等配置信息; D2、根據(jù)配置變量讀取數(shù)據(jù)庫(kù)相關(guān)信息,建立與數(shù)據(jù)庫(kù)表結(jié)構(gòu)對(duì)應(yīng)的模型; D3、根據(jù)自定義的代碼模板自動(dòng)生成基于SSH框架的前后臺(tái)代碼及相應(yīng)配置XML配置文件,并自動(dòng)拷貝到步驟B中配置的相應(yīng)目錄。
3.根據(jù)權(quán)利要求2的方法,其中步驟A進(jìn)一步包括:自定義前臺(tái)源代碼模板和后臺(tái)源代碼模板,并且其中數(shù)據(jù)庫(kù)信息包括數(shù)據(jù)庫(kù)建表語(yǔ)句及別名。
4.根據(jù)權(quán)利要求3的方法,其中數(shù)據(jù)庫(kù)參數(shù)包括數(shù)據(jù)庫(kù)連接URL、數(shù)據(jù)庫(kù)用戶名、數(shù)據(jù)庫(kù)密碼。
全文摘要
一種基于SSH框架的代碼自動(dòng)生成方法包括步驟A、自定義相關(guān)信息,其包括自定義代碼模板和數(shù)據(jù)庫(kù)信息;B、配置數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)參數(shù)、源代碼保存路徑;C、根據(jù)步驟A中自定義的代碼模板和數(shù)據(jù)庫(kù)信息,選擇不同的代碼模板及需要生成的數(shù)據(jù)庫(kù)對(duì)象;以及D、根據(jù)步驟B中的配置信息以及在步驟C中所選擇的代碼模板及數(shù)據(jù)庫(kù)對(duì)象,自動(dòng)生成源代碼。
文檔編號(hào)G06F9/44GK103092589SQ20111034553
公開(kāi)日2013年5月8日 申請(qǐng)日期2011年11月3日 優(yōu)先權(quán)日2011年11月3日
發(fā)明者高鑫軍, 胡小剛, 沈建 申請(qǐng)人:浙江省公眾信息產(chǎn)業(yè)有限公司