專(zhuān)利名稱(chēng):一種可視化的基于jet技術(shù)的組件模塊開(kāi)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及ー種組件模塊開(kāi)發(fā)方法,尤其涉及一種可視化的基于JET Java模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法。
背景技術(shù):
在J2EE項(xiàng)目開(kāi)發(fā)中,開(kāi)發(fā)人員常常需要手動(dòng)編寫(xiě)ー些持久化類(lèi)組件模塊和映射組件模塊等基礎(chǔ)組件模塊,還需要手動(dòng)編寫(xiě)符合J2EE框架規(guī)范的數(shù)據(jù)訪(fǎng)問(wèn)類(lèi)文件等。對(duì)于以上所表述的方式存在以下問(wèn)題開(kāi)發(fā)人員需要了解數(shù)據(jù)庫(kù)類(lèi)型與java類(lèi)型的對(duì)應(yīng)關(guān)系。開(kāi)發(fā)人員需要了解相應(yīng)的J2EE框架規(guī)范。手工輸入代碼,開(kāi)發(fā)時(shí)間長(zhǎng),容易出現(xiàn)語(yǔ)法錯(cuò)誤和編碼風(fēng)格不規(guī)范等問(wèn)題。Eclipse是ー種基于Java的可擴(kuò)展開(kāi)源開(kāi)發(fā)平臺(tái)。Eclipse是ー個(gè)框架和ー組服務(wù),用于通過(guò)插件組件模塊構(gòu)建開(kāi)發(fā)環(huán)境。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)的不足,提供一種代碼格式統(tǒng)ー,語(yǔ)法錯(cuò)誤率低、開(kāi)發(fā)時(shí)間短、開(kāi)發(fā)效率高、對(duì)組件模塊開(kāi)發(fā)人員能力要求低的可視化的基于JET Java模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法。本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下一種可視化的基于JET技術(shù)的組件模塊開(kāi)發(fā)方法,包括如下步驟步驟1:抽取基礎(chǔ)類(lèi)組件模塊的核心內(nèi)容,創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板;步驟2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊;步驟3 :根據(jù)關(guān)系型數(shù)據(jù)模塊中存儲(chǔ)的的信息生成相應(yīng)的對(duì)象型數(shù)據(jù)模塊;步驟4 :根據(jù)目標(biāo)組件模塊的需求對(duì)對(duì)象型數(shù)據(jù)模塊中的信息進(jìn)行配置;步驟5 :將已配置的對(duì)象型數(shù)據(jù)模塊與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合,自動(dòng)生成目標(biāo)組件模塊的源代碼;步驟6 :判斷是否存在用于存儲(chǔ)目標(biāo)組件模塊源代碼的目標(biāo)文件,如果存在則將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件模塊的源代碼進(jìn)行組合,生成最終的目標(biāo)組件模塊源代碼,并存儲(chǔ)在現(xiàn)有的目標(biāo)文件中;否則創(chuàng)建相應(yīng)的目標(biāo)文件,將生成的目標(biāo)組件模塊的源代碼存入新創(chuàng)建的目標(biāo)文件中。在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。進(jìn)ー步,所述步驟2中根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊的步驟如下步驟2.1 :動(dòng)態(tài)加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)類(lèi);步驟2. 2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型配置數(shù)據(jù)庫(kù)連接信息;
步驟2. 3 :根據(jù)數(shù)據(jù)庫(kù)連接信息連接相應(yīng)數(shù)據(jù)庫(kù);步驟2. 4 :選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊。進(jìn)ー步,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息的具體內(nèi)容包括數(shù)據(jù)庫(kù)類(lèi)型和數(shù)據(jù)源。進(jìn)ー步,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息,步驟2. 4選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊和步驟3中對(duì)數(shù)據(jù)模塊進(jìn)行相應(yīng)配置都是通過(guò)可視化向?qū)?shí)現(xiàn)的。進(jìn)ー步,所述步驟I中創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板和步驟5中將實(shí)體對(duì)象與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合是通過(guò)JET Java模板引擎技術(shù)實(shí)現(xiàn)的。進(jìn)ー步,所述步驟6中將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件的源代碼進(jìn)行組合是通過(guò)Jmerge Java合并技術(shù)實(shí)現(xiàn)的。本發(fā)明的有益效果是本發(fā)明所述ー種可視化的基于JET Java模板引擎技術(shù)的組件模塊模塊開(kāi)發(fā)方法,開(kāi)發(fā)人員無(wú)需手動(dòng)編寫(xiě)代碼,只需利用JET技術(shù)創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板,并根據(jù)要生成的目標(biāo)組件模塊的類(lèi)型和具體內(nèi)容通過(guò)可視化向?qū)нM(jìn)行相關(guān)配置,將配置的對(duì)象型數(shù)據(jù)模塊與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合,即可自動(dòng)生成目標(biāo)組件模塊的源代碼,且生成的代碼格式統(tǒng)一,語(yǔ)法錯(cuò)誤出現(xiàn)率低,并提高了測(cè)試效率,節(jié)省了開(kāi)發(fā)時(shí)間。
圖1為本發(fā)明所述ー種可視化的基于JET技術(shù)的組件模塊開(kāi)發(fā)方法的流程圖;圖2為本發(fā)明所述步驟2的流程具體實(shí)施例方式鑒于使用人エ編碼方式開(kāi)發(fā)業(yè)基礎(chǔ)件存在的諸多問(wèn)題,本發(fā)明擬在Eclipse平臺(tái)上實(shí)現(xiàn)ー個(gè)基礎(chǔ)組件模塊的可視化開(kāi)發(fā)插件,使用Eclipse的SWT/JFace技術(shù)實(shí)現(xiàn)可視化操作,結(jié)合 Eclipse EMF 的 JET (Java Emitter Templates) Java 模板引擎技術(shù)和 JMergeJava合并技術(shù),通過(guò)開(kāi)發(fā)人員通過(guò)簡(jiǎn)單的配置,最終根據(jù)配置信息生成基礎(chǔ)組件模塊源代碼。其中,SWT (Standard Widget Toolkit)標(biāo)準(zhǔn)部件工具集,開(kāi)源的⑶I (圖形用戶(hù)界面)編程框架JFace是建立在SWT之上的圖形用戶(hù)界面編程框架。以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。如圖1所示,一種可視化的基于JET技術(shù)的組件模塊開(kāi)發(fā)方法,包括如下步驟步驟1:抽取基礎(chǔ)類(lèi)組件模塊的核心內(nèi)容,創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板;步驟2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊;步驟3 :根據(jù)關(guān)系型數(shù)據(jù)模塊中存儲(chǔ)的的信息生成相應(yīng)的對(duì)象型數(shù)據(jù)模塊;其中,對(duì)象型數(shù)據(jù)模塊指具有相同屬性的對(duì)象的集合;比如,數(shù)據(jù)庫(kù)中存在一個(gè)有關(guān)汽車(chē)的關(guān)系型數(shù)據(jù)模塊,關(guān)系型數(shù)據(jù)模塊中存有汽車(chē)名稱(chēng)、汽車(chē)標(biāo)識(shí)、車(chē)門(mén)、車(chē)輪、引擎這些字段,可以根據(jù)這些字段生成一個(gè)對(duì)象型數(shù)據(jù)模塊;步驟4 :根據(jù)目標(biāo)組件模塊的需求對(duì)對(duì)象型數(shù)據(jù)模塊中的信息進(jìn)行配置;如上例,根據(jù)需要對(duì)汽車(chē)名稱(chēng)、汽車(chē)標(biāo)識(shí)、車(chē)門(mén)、車(chē)輪、引擎等這些字段進(jìn)行配置,得到最終的實(shí)體對(duì)象;步驟5 :將已配置的對(duì)象型數(shù)據(jù)模塊與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合,自動(dòng)生成目標(biāo)組件模塊的源代碼;步驟6 :判斷是否存在用于存儲(chǔ)目標(biāo)組件模塊源代碼的目標(biāo)文件,如果存在則將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件模塊的源代碼進(jìn)行組合,生成最終的目標(biāo)組件模塊源代碼,并存儲(chǔ)在現(xiàn)有的目標(biāo)文件中;否則創(chuàng)建相應(yīng)的目標(biāo)文件,將生成的目標(biāo)組件模塊的源代碼存入新創(chuàng)建的目標(biāo)文件中。其中,所述步驟I中創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板和步驟5中將實(shí)體對(duì)象與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合是通過(guò)JET技術(shù)實(shí)現(xiàn)的。其中,所述步驟6中將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件的源代碼進(jìn)行組合是通過(guò)JMerge技術(shù)實(shí)現(xiàn)的。其中,所述步驟6中,如果已存在用于存儲(chǔ)目標(biāo)組件模塊源代碼的目標(biāo)文件,表明已生成過(guò)相同名稱(chēng)的組件模塊,且該目標(biāo)文件中已存有相應(yīng)的源代碼,但已存有的相同名稱(chēng)的組件模塊的具體內(nèi)容與后生成的組件模塊的具體內(nèi)容可能相同也可能不同,如果相同,則后生成的源代碼與已存有的源代碼的組合,相當(dāng)于后生成的代碼將已存有的代碼完全覆蓋;如果不同,則將后生成的源代碼與已存有的源代碼進(jìn)行組合,生成最終的目標(biāo)組件模塊的源代碼。如圖2所示,所述步驟2中根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊的步驟如下步驟2.1 :通過(guò)ClassLoader技術(shù)動(dòng)態(tài)加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)類(lèi);步驟2. 2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型配置數(shù)據(jù)庫(kù)連接信息;其中,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息的具體內(nèi)容包括數(shù)據(jù)庫(kù)類(lèi)型和數(shù)據(jù)源。步驟2. 3 :根據(jù)數(shù)據(jù)庫(kù)連接信息通過(guò)JDBC方式連接相應(yīng)數(shù)據(jù)庫(kù);步驟2. 4 :選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊。其中,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息,步驟2. 4選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊和步驟3中對(duì)數(shù)據(jù)模塊進(jìn)行相應(yīng)配置都是通過(guò)可視化向?qū)?shí)現(xiàn)的,本發(fā)明利用SWT/JFace插件的圖形展示技術(shù)實(shí)現(xiàn)可視化向?qū)У?。本發(fā)明所述ー種可視化的基于JET技術(shù)的組件模塊開(kāi)發(fā)方法,開(kāi)發(fā)人員無(wú)需手動(dòng)編寫(xiě)代碼,只需利用JET技術(shù)創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板,并根據(jù)要生成的目標(biāo)組件模塊的類(lèi)型和具體內(nèi)容通過(guò)可視化向?qū)нM(jìn)行相關(guān)配置,并與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行相應(yīng)結(jié)合,即可自動(dòng)生成目標(biāo)組件模塊的源代碼,且生成的代碼格式統(tǒng)一,語(yǔ)法錯(cuò)誤出現(xiàn)率低,并提高了測(cè)試效率,節(jié)省了開(kāi)發(fā)時(shí)間。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種可視化的基于JET Java模板引擎技術(shù)組件模塊開(kāi)發(fā)方法,其特征在于,包括如下步驟 步驟1:抽取基礎(chǔ)類(lèi)組件模塊的核心內(nèi)容,創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板; 步驟2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊; 步驟3 :根據(jù)關(guān)系型數(shù)據(jù)模塊中存儲(chǔ)的的信息生成相應(yīng)的對(duì)象型數(shù)據(jù)模塊; 步驟4 :根據(jù)目標(biāo)組件模塊的需求對(duì)對(duì)象型數(shù)據(jù)模塊中的信息進(jìn)行配置; 步驟5 :將已配置的對(duì)象型數(shù)據(jù)模塊與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合,自動(dòng)生成目標(biāo)組件模塊的源代碼; 步驟6 :判斷是否存在用于存儲(chǔ)目標(biāo)組件模塊源代碼的目標(biāo)文件,如果存在則將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件模塊的源代碼進(jìn)行組合,生成最終的目標(biāo)組件模塊源代碼,并存儲(chǔ)在現(xiàn)有的目標(biāo)文件中;否則創(chuàng)建相應(yīng)的目標(biāo)文件,將生成的目標(biāo)組件模塊的源代碼存入新創(chuàng)建的目標(biāo)文件中。
2.根據(jù)權(quán)利要求1所述一種可視化的基于JETJava模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,其特征在于,所述步驟2中根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊的步驟如下 步驟2.1 :動(dòng)態(tài)加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)類(lèi); 步驟2. 2 :根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型配置數(shù)據(jù)庫(kù)連接信息; 步驟2. 3 :根據(jù)數(shù)據(jù)庫(kù)連接信息連接相應(yīng)數(shù)據(jù)庫(kù); 步驟2. 4 :選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊。
3.根據(jù)權(quán)利要求2所述一種可視化的基于JETJava模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,其特征在于,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息的具體內(nèi)容包括數(shù)據(jù)庫(kù)類(lèi)型和數(shù)據(jù)源。
4.根據(jù)權(quán)利要求2所述一種可視化的基于JETJava模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,其特征在于,所述步驟2. 2中配置數(shù)據(jù)庫(kù)連接信息,步驟2. 4選擇數(shù)據(jù)庫(kù)中相應(yīng)的數(shù)據(jù)模塊和步驟3中對(duì)數(shù)據(jù)模塊進(jìn)行相應(yīng)配置都是通過(guò)可視化向?qū)?shí)現(xiàn)的。
5.根據(jù)權(quán)利要求1所述一種可視化的基于JETJava模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,其特征在于,所述步驟I中創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板和步驟5中將實(shí)體對(duì)象與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合是通過(guò)JET Java模板引擎技術(shù)實(shí)現(xiàn)的。
6.根據(jù)權(quán)利要求1所述一種可視化的基于JETJava模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,其特征在于,所述步驟6中將目標(biāo)文件中已經(jīng)存在的源代碼與生成的目標(biāo)組件模塊的源代碼進(jìn)行組合是通過(guò)Jmerge Java合并技術(shù)實(shí)現(xiàn)的。
全文摘要
本發(fā)明涉及一種可視化的基于JET Java模板引擎技術(shù)的組件模塊開(kāi)發(fā)方法,包括抽取基礎(chǔ)類(lèi)組件模塊的核心內(nèi)容,創(chuàng)建基礎(chǔ)類(lèi)組件模塊的模板;根據(jù)要開(kāi)發(fā)的目標(biāo)組件模塊的類(lèi)型選擇數(shù)據(jù)庫(kù)中相應(yīng)的關(guān)系型數(shù)據(jù)模塊;根據(jù)關(guān)系型數(shù)據(jù)模塊中存儲(chǔ)的信息生成相應(yīng)的對(duì)象型數(shù)據(jù)模塊;根據(jù)目標(biāo)組件模塊的需求配對(duì)象型數(shù)據(jù)模塊;將已配置的對(duì)象型數(shù)據(jù)模塊與基礎(chǔ)類(lèi)組件模塊的模板進(jìn)行結(jié)合,生成目標(biāo)組件模塊的源代碼;將目標(biāo)組件模塊的源代碼存儲(chǔ)在目標(biāo)文件中;該方法無(wú)需開(kāi)發(fā)人員手動(dòng)編寫(xiě)代碼,只需配置數(shù)據(jù)庫(kù)中相關(guān)數(shù)據(jù),即可生成目標(biāo)組件模塊的源代碼,且生成的代碼格式統(tǒng)一,語(yǔ)法錯(cuò)誤率低,測(cè)試效率高,開(kāi)發(fā)時(shí)間短。
文檔編號(hào)G06F9/44GK103019690SQ20121047681
公開(kāi)日2013年4月3日 申請(qǐng)日期2012年11月20日 優(yōu)先權(quán)日2012年11月20日
發(fā)明者康蕊 申請(qǐng)人:北京思特奇信息技術(shù)股份有限公司