国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于osgi的代碼正向工程的實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置制造方法

      文檔序號(hào):6522461閱讀:453來(lái)源:國(guó)知局
      基于osgi的代碼正向工程的實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置制造方法
      【專利摘要】本發(fā)明提供了一種基于OSGI的代碼正向工程的實(shí)現(xiàn)方法,包括:導(dǎo)入設(shè)計(jì)完成的業(yè)務(wù)UI數(shù)據(jù),并進(jìn)行解析;根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源;根據(jù)解析結(jié)果建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系;根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)UI數(shù)據(jù)的后臺(tái)邏輯代碼。本發(fā)明還提出了一種基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置。通過(guò)本發(fā)明的技術(shù)方案,可以依據(jù)已經(jīng)設(shè)計(jì)好的業(yè)務(wù)html頁(yè)面,通過(guò)正向代碼工程自動(dòng)生成代碼,使得需求人員設(shè)計(jì)的html頁(yè)面被開發(fā)人員完全復(fù)用。
      【專利說(shuō)明】基于OSGI的代碼正向工程的實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及大數(shù)據(jù)業(yè)務(wù)【技術(shù)領(lǐng)域】,具體而言,涉及一種基于OSGI的代碼正向工程的實(shí)現(xiàn)方法和一種基于OSGI (Open Service Gateway Initiative)的代碼正向工程的實(shí)現(xiàn)裝置。
      【背景技術(shù)】
      [0002]傳統(tǒng)的正向工程工具,包括Rational Rose、Together CC、JBOO、ArgoUML 等,只能根據(jù)設(shè)計(jì)好的UML生成代碼,不僅需求分析人員設(shè)計(jì)的html頁(yè)面不能復(fù)用,而且無(wú)法按照實(shí)際需求自定義數(shù)據(jù)源、交叉關(guān)聯(lián),更無(wú)法使生成的代碼符合架構(gòu)設(shè)計(jì)。

      【發(fā)明內(nèi)容】

      [0003]本發(fā)明正是基于上述問(wèn)題中至少之一,提出了一種新的技術(shù)方案,可以依據(jù)已經(jīng)設(shè)計(jì)好的業(yè)務(wù)html頁(yè)面,通過(guò)正向代碼工程自動(dòng)生成代碼,使得需求人員設(shè)計(jì)的html頁(yè)面被開發(fā)人員完全復(fù)用。
      [0004]有鑒于此,本發(fā)明提出了一種基于OSGI的代碼正向工程的實(shí)現(xiàn)方法,包括:導(dǎo)入設(shè)計(jì)完成的業(yè)務(wù)UI數(shù)據(jù),并進(jìn)行解析;根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源;根據(jù)解析結(jié)果建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系;根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)Π數(shù)據(jù)的后臺(tái)邏輯代碼。
      [0005]在該技術(shù)方案中,先由需求人員根據(jù)業(yè)務(wù)需求設(shè)計(jì)業(yè)務(wù)html頁(yè)面,然后通過(guò)對(duì)該html頁(yè)面相關(guān)的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析,從而綁定后臺(tái)的數(shù)據(jù)源以及具體的數(shù)據(jù)源數(shù)據(jù),建立前臺(tái)的Π需求與后臺(tái)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,從而實(shí)現(xiàn)基于OSGI的代碼正向工程,即根據(jù)UI需求來(lái)自動(dòng)生成后臺(tái)以及全局(前臺(tái)與后臺(tái))的邏輯代碼。
      [0006]在上述技術(shù)方案中,優(yōu)選地,解析所述業(yè)務(wù)Π數(shù)據(jù)的過(guò)程包括:解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      [0007]在該技術(shù)方案中,對(duì)于業(yè)務(wù)Π數(shù)據(jù)的解析,主要涉及到對(duì)其中包含的頁(yè)面業(yè)務(wù)數(shù)據(jù)進(jìn)行結(jié)構(gòu)關(guān)系的解析過(guò)程;通過(guò)對(duì)頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系解析,從而一方面能夠清楚地了解到如何在前臺(tái)的頁(yè)面業(yè)務(wù)數(shù)據(jù)與后臺(tái)的數(shù)據(jù)源數(shù)據(jù)之間建立關(guān)聯(lián),另一方面則能夠據(jù)此了解到后臺(tái)的實(shí)際數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,確保通過(guò)正向工程正確生成對(duì)應(yīng)于業(yè)務(wù)Π數(shù)據(jù)的邏輯代碼。
      [0008]在上述任一技術(shù)方案中,優(yōu)選地,在導(dǎo)入所述業(yè)務(wù)Π數(shù)據(jù)之前,還包括:在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)Π數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、js腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      [0009]在該技術(shù)方案中,需求人員可以基于如OSGI平臺(tái)實(shí)現(xiàn)對(duì)前臺(tái)的業(yè)務(wù)Π頁(yè)面的在線設(shè)計(jì),從而有助于提高與后續(xù)的基于OSGI平臺(tái)的代碼正向工程的兼容性。當(dāng)然,此處并不限定其具體的生成方式,實(shí)際上,本領(lǐng)域技術(shù)人員應(yīng)該理解的是,顯然也可以通過(guò)其他方式獨(dú)立生成業(yè)務(wù)UI數(shù)據(jù)。
      [0010]在上述任一技術(shù)方案中,優(yōu)選地,還包括:建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      [0011]在該技術(shù)方案中,通過(guò)建立正向數(shù)據(jù)模型,使得能夠基于該模型,準(zhǔn)確、有效地實(shí)現(xiàn)對(duì)數(shù)據(jù)結(jié)構(gòu)關(guān)系的理解,并據(jù)此實(shí)現(xiàn)對(duì)數(shù)據(jù)關(guān)聯(lián)關(guān)系的準(zhǔn)確建立。
      [0012]在上述任一技術(shù)方案中,優(yōu)選地,還包括:建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)Π數(shù)據(jù)。
      [0013]在該技術(shù)方案中,不同用戶如果屬于不同的角色,比如對(duì)于需求人員和開發(fā)人員,其具體對(duì)應(yīng)的數(shù)據(jù)源可以不同,從而有助于各個(gè)角色的用戶執(zhí)行對(duì)應(yīng)的處理任務(wù)。
      [0014]本發(fā)明還提出了一種基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置,包括:數(shù)據(jù)解析單元,用于對(duì)導(dǎo)入的設(shè)計(jì)完成的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析;數(shù)據(jù)源綁定單元,用于根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源;數(shù)據(jù)關(guān)聯(lián)單元,用于根據(jù)解析結(jié)果建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系;代碼生成單元,用于根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)Π數(shù)據(jù)的后臺(tái)邏輯代碼。
      [0015]在該技術(shù)方案中,先由需求人員根據(jù)業(yè)務(wù)需求設(shè)計(jì)業(yè)務(wù)html頁(yè)面,然后通過(guò)對(duì)該html頁(yè)面相關(guān)的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析,從而綁定后臺(tái)的數(shù)據(jù)源以及具體的數(shù)據(jù)源數(shù)據(jù),建立前臺(tái)的Π需求與后臺(tái)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,從而實(shí)現(xiàn)基于OSGI的代碼正向工程,即根據(jù)UI需求來(lái)自動(dòng)生成后臺(tái)以及全局(前臺(tái)與后臺(tái))的邏輯代碼。
      [0016]在上述技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)解析單元用于:解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      [0017]在該技術(shù)方案中,對(duì)于業(yè)務(wù)Π數(shù)據(jù)的解析,主要涉及到對(duì)其中包含的頁(yè)面業(yè)務(wù)數(shù)據(jù)進(jìn)行結(jié)構(gòu)關(guān)系的解析過(guò)程;通過(guò)對(duì)頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系解析,從而一方面能夠清楚地了解到如何在前臺(tái)的頁(yè)面業(yè)務(wù)數(shù)據(jù)與后臺(tái)的數(shù)據(jù)源數(shù)據(jù)之間建立關(guān)聯(lián),另一方面則能夠據(jù)此了解到后臺(tái)的實(shí)際數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,確保通過(guò)正向工程正確生成對(duì)應(yīng)于業(yè)務(wù)Π數(shù)據(jù)的邏輯代碼。
      [0018]在上述任一技術(shù)方案中,優(yōu)選地,還包括:在線設(shè)計(jì)單元,用于在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)UI數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、js腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      [0019]在該技術(shù)方案中,需求人員可以基于如OSGI平臺(tái)實(shí)現(xiàn)對(duì)前臺(tái)的業(yè)務(wù)Π頁(yè)面的在線設(shè)計(jì),從而有助于提高與后續(xù)的基于OSGI平臺(tái)的代碼正向工程的兼容性。當(dāng)然,此處并不限定其具體的生成方式,實(shí)際上,本領(lǐng)域技術(shù)人員應(yīng)該理解的是,顯然也可以通過(guò)其他方式獨(dú)立生成業(yè)務(wù)Π數(shù)據(jù)。
      [0020]在上述任一技術(shù)方案中,優(yōu)選地,還包括:模型建立單元,用于建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及所述數(shù)據(jù)關(guān)聯(lián)單元用于:根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      [0021]在該技術(shù)方案中,通過(guò)建立正向數(shù)據(jù)模型,使得能夠基于該模型,準(zhǔn)確、有效地實(shí)現(xiàn)對(duì)數(shù)據(jù)結(jié)構(gòu)關(guān)系的理解,并據(jù)此實(shí)現(xiàn)對(duì)數(shù)據(jù)關(guān)聯(lián)關(guān)系的準(zhǔn)確建立。
      [0022]在上述任一技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)源綁定單元還用于:建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)Π數(shù)據(jù)。
      [0023]在該技術(shù)方案中,不同用戶如果屬于不同的角色,比如對(duì)于需求人員和開發(fā)人員,其具體對(duì)應(yīng)的數(shù)據(jù)源可以不同,從而有助于各個(gè)角色的用戶執(zhí)行對(duì)應(yīng)的處理任務(wù)。[0024]通過(guò)以上技術(shù)方案,可以依據(jù)已經(jīng)設(shè)計(jì)好的業(yè)務(wù)html頁(yè)面,通過(guò)正向代碼工程自動(dòng)生成代碼,使得需求人員設(shè)計(jì)的html頁(yè)面被開發(fā)人員完全復(fù)用。
      【專利附圖】

      【附圖說(shuō)明】
      [0025]圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)方法的示意流程圖;
      [0026]圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的頁(yè)面框架MVC架構(gòu)的結(jié)構(gòu)示意圖;
      [0027]圖3A示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的PageJSON數(shù)據(jù)結(jié)構(gòu)的示意圖;
      [0028]圖3B示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的ResultData數(shù)據(jù)結(jié)構(gòu)的示意圖;
      [0029]圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的正向工程的處理過(guò)程的示意流程圖;
      [0030]圖5為圖4所示實(shí)施例的通過(guò)iCode插件自動(dòng)生成代碼的示意流程圖;
      [0031]圖6示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置的示意框圖。
      【具體實(shí)施方式】
      [0032]為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)的實(shí)施例及實(shí)施例中的特征可以相互組合。
      [0033]在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來(lái)實(shí)施,因此,本發(fā)明的保護(hù)范圍并不受下面公開的具體實(shí)施例的限制。
      [0034]圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)方法的示意流程圖。
      [0035]如圖1所示,根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)方法,包括:
      [0036]步驟102,導(dǎo)入設(shè)計(jì)完成的業(yè)務(wù)UI數(shù)據(jù),并進(jìn)行解析;
      [0037]步驟104,根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源;
      [0038]步驟106,根據(jù)解析結(jié)果建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系;
      [0039]步驟108,根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)Π數(shù)據(jù)的后臺(tái)邏輯代碼。
      [0040]在該技術(shù)方案中,先由需求人員根據(jù)業(yè)務(wù)需求設(shè)計(jì)業(yè)務(wù)html頁(yè)面,然后通過(guò)對(duì)該html頁(yè)面相關(guān)的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析,從而綁定后臺(tái)的數(shù)據(jù)源以及具體的數(shù)據(jù)源數(shù)據(jù),建立前臺(tái)的Π需求與后臺(tái)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,從而實(shí)現(xiàn)基于OSGI的代碼正向工程,即根據(jù)UI需求來(lái)自動(dòng)生成后臺(tái)以及全局(前臺(tái)與后臺(tái))的邏輯代碼。
      [0041]在上述技術(shù)方案中,優(yōu)選地,解析所述業(yè)務(wù)Π數(shù)據(jù)的過(guò)程包括:解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      [0042]在該技術(shù)方案中,對(duì)于業(yè)務(wù)Π數(shù)據(jù)的解析,主要涉及到對(duì)其中包含的頁(yè)面業(yè)務(wù)數(shù)據(jù)進(jìn)行結(jié)構(gòu)關(guān)系的解析過(guò)程;通過(guò)對(duì)頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系解析,從而一方面能夠清楚地了解到如何在前臺(tái)的頁(yè)面業(yè)務(wù)數(shù)據(jù)與后臺(tái)的數(shù)據(jù)源數(shù)據(jù)之間建立關(guān)聯(lián),另一方面則能夠據(jù)此了解到后臺(tái)的實(shí)際數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,確保通過(guò)正向工程正確生成對(duì)應(yīng)于業(yè)務(wù)Π數(shù)據(jù)的邏輯代碼。
      [0043]在上述任一技術(shù)方案中,優(yōu)選地,在導(dǎo)入所述業(yè)務(wù)Π數(shù)據(jù)之前,還包括:在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)Π數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、js腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      [0044]在該技術(shù)方案中,需求人員可以基于如OSGI平臺(tái)實(shí)現(xiàn)對(duì)前臺(tái)的業(yè)務(wù)Π頁(yè)面的在線設(shè)計(jì),從而有助于提高與后續(xù)的基于OSGI平臺(tái)的代碼正向工程的兼容性。當(dāng)然,此處并不限定其具體的生成方式,實(shí)際上,本領(lǐng)域技術(shù)人員應(yīng)該理解的是,顯然也可以通過(guò)其他方式獨(dú)立生成業(yè)務(wù)UI數(shù)據(jù)。
      [0045]在上述任一技術(shù)方案中,優(yōu)選地,還包括:建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      [0046]在該技術(shù)方案中,通過(guò)建立正向數(shù)據(jù)模型,使得能夠基于該模型,準(zhǔn)確、有效地實(shí)現(xiàn)對(duì)數(shù)據(jù)結(jié)構(gòu)關(guān)系的理解,并據(jù)此實(shí)現(xiàn)對(duì)數(shù)據(jù)關(guān)聯(lián)關(guān)系的準(zhǔn)確建立。
      [0047]在上述任一技術(shù)方案中,優(yōu)選地,還包括:建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)Π數(shù)據(jù)。
      [0048]在該技術(shù)方案中,不同用戶如果屬于不同的角色,比如對(duì)于需求人員和開發(fā)人員,其具體對(duì)應(yīng)的數(shù)據(jù)源可以不同,從而有助于各個(gè)角色的用戶執(zhí)行對(duì)應(yīng)的處理任務(wù)。
      [0049]本發(fā)明主要討論了如果通過(guò)正向工程,從而能夠基于需求人員在前端設(shè)計(jì)的html頁(yè)面,自動(dòng)完成后臺(tái)數(shù)據(jù)的關(guān)聯(lián)和代碼生成過(guò)程。其中,正向工程的前提是必須滿足4個(gè)因素:統(tǒng)一的整體OSGI軟件架構(gòu)、頁(yè)面MVC架構(gòu)、統(tǒng)一頁(yè)面數(shù)據(jù)模型、靈活的交叉關(guān)聯(lián)。
      [0050]1、統(tǒng)一的整體OSGI軟件架構(gòu)
      [0051]OSGI (Open Service Gateway Initiative)開放服務(wù)網(wǎng)關(guān)實(shí)際是一個(gè)由 OSGI 聯(lián)盟發(fā)起、以Java為技術(shù)平臺(tái)的動(dòng)態(tài)模塊化規(guī)范。只有具備整體架構(gòu)的前提下,業(yè)務(wù)UI數(shù)據(jù)與后臺(tái)數(shù)據(jù)之間才能夠?qū)崿F(xiàn)兼容和有效關(guān)聯(lián),從而自動(dòng)生成代碼才有意義。
      [0052]2、頁(yè)面MVC架構(gòu)
      [0053]圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的頁(yè)面框架MVC架構(gòu)的結(jié)構(gòu)示意圖。
      [0054]如圖2所示,頁(yè)面框架采用分層結(jié)構(gòu),即模型層(Model)、視圖層(View)、控制層(ContiOller)t^I設(shè)計(jì)器、正向工程生成的頁(yè)面框架均采用此架構(gòu),當(dāng)用戶與頁(yè)面進(jìn)行交互時(shí),視圖接收到用戶的操作,通過(guò)控制器將事件傳遞給模型,模型對(duì)數(shù)據(jù)進(jìn)行修改,視圖監(jiān)控到模型數(shù)據(jù)的修改,相應(yīng)的更新頁(yè)面。統(tǒng)一的架構(gòu)保證了頁(yè)面處理邏輯的一致,對(duì)于需求分析人員、開發(fā)人員而言,唯一不同的就是Model層的數(shù)據(jù)來(lái)源不一致。
      [0055]當(dāng)然,圖2所示的MVC架構(gòu)中還包含其他的功能模塊,如包含一個(gè)或多個(gè)應(yīng)用配置器的應(yīng)用管理器、控件庫(kù)、核心庫(kù)、基礎(chǔ)插件庫(kù)、模板庫(kù)和包含一個(gè)或多個(gè)插件配置器的配置管理器等,此處不再贅述。
      [0056]3、統(tǒng)一的頁(yè)面數(shù)據(jù)模型
      [0057]統(tǒng)一的頁(yè)面數(shù)據(jù)模型對(duì)于正向工程代碼自動(dòng)生成非常重要,傳統(tǒng)的逆向工程代碼因架構(gòu)理念上的缺陷實(shí)際很難提升開發(fā)效率、降低開發(fā)門檻,更不用說(shuō)所見即所得。本方案將頁(yè)面請(qǐng)求數(shù)據(jù)統(tǒng)一映射封裝到PageJSON對(duì)象中,服務(wù)端或后臺(tái)返回給頁(yè)面的數(shù)據(jù)全部封裝為ResultData對(duì)象,最終返回給頁(yè)面的數(shù)據(jù)格式同樣也為JSON字符串。
      [0058]其中,作為一種具體實(shí)施例和參考樣式,圖3A示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的PageJSON數(shù)據(jù)結(jié)構(gòu)的示意圖;圖3B示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的ResultData數(shù)據(jù)結(jié)構(gòu)的示意圖。
      [0059]4、靈活的交叉關(guān)聯(lián)
      [0060]交叉關(guān)聯(lián)包括前臺(tái)、后臺(tái)數(shù)據(jù)的關(guān)聯(lián),后臺(tái)數(shù)據(jù)間的關(guān)聯(lián)。簡(jiǎn)言之,前、后臺(tái)交互實(shí)質(zhì)就是一種數(shù)據(jù)交互,業(yè)務(wù)邏輯也體現(xiàn)的交互上,這也是正向工程代碼生成邏輯的關(guān)鍵所在。
      [0061]下面結(jié)合圖4和圖5,對(duì)基于本發(fā)明的正向工程代碼生成的過(guò)程進(jìn)行詳細(xì)描述。
      [0062]圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的正向工程的處理過(guò)程的示意流程圖。
      [0063]如圖4所示,根據(jù)本發(fā)明的一個(gè)實(shí)施例的正向工程的處理過(guò)程包括:
      [0064]步驟402,提供在線UI設(shè)計(jì)器,主要是提供給普通用戶和需求分析人員使用,此類用戶可自定義或根據(jù)UI設(shè)計(jì)器提供的業(yè)務(wù)模板(例如:普通查詢、高級(jí)查詢等模板)將所需的業(yè)務(wù)場(chǎng)景demo設(shè)計(jì)出來(lái)并在線發(fā)布(此種發(fā)布做了數(shù)據(jù)隔離,并不會(huì)在生產(chǎn)環(huán)境將新增或修改的業(yè)務(wù)功能展現(xiàn)出來(lái))。
      [0065]步驟404,提供代碼生成插件(可以稱之為iCode代碼生成插件),此插件可以集成在Eclipse開發(fā)平臺(tái)也可以在線部署,主要用于自動(dòng)生成前后端代碼模塊,代碼生成機(jī)制均在該插件實(shí)現(xiàn)。
      [0066]步驟406,在完成代碼生成后,判斷是需要二次開發(fā)。
      [0067]步驟408,若需要,則執(zhí)行二次開發(fā),使得業(yè)務(wù)人員可以根據(jù)實(shí)際業(yè)務(wù)需求進(jìn)行擴(kuò)展,然后進(jìn)入步驟410。
      [0068]步驟410,提供自動(dòng)部署器,用于將前后端生成的代碼自動(dòng)熱插拔部署到對(duì)應(yīng)的運(yùn)行環(huán)境中。
      [0069]其中,針對(duì)步驟404中的代碼生成過(guò)程,下面結(jié)合圖5進(jìn)行詳細(xì)說(shuō)明。圖5為圖4所示實(shí)施例的通過(guò)iCode插件自動(dòng)生成代碼的示意流程圖。
      [0070]如圖5所示,通過(guò)iCode插件自動(dòng)生成代碼的過(guò)程包括:
      [0071]步驟502,在線導(dǎo)入U(xiǎn)I。具體地,包括導(dǎo)入頁(yè)面html、js腳本和頁(yè)面數(shù)據(jù)結(jié)構(gòu)等。
      [0072]步驟504,提供UI解析器,對(duì)導(dǎo)入U(xiǎn)I進(jìn)行解析。具體包括:
      [0073]I)解析UI中的html、js以及事件;
      [0074]2)解析UI中的基礎(chǔ)插件(例如Dropdown);
      [0075]3)解析UI中的頁(yè)面業(yè)務(wù)數(shù)據(jù)結(jié)構(gòu);
      [0076]4)建立UI事件與UI數(shù)據(jù)結(jié)構(gòu)的關(guān)聯(lián)關(guān)系。
      [0077]步驟506,綁定數(shù)據(jù)源。具體包括:
      [0078]I)建立數(shù)據(jù)源,數(shù)據(jù)源數(shù)據(jù)可以是結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù);
      [0079]2)綁定頁(yè)面與數(shù)據(jù)源的關(guān)系;
      [0080]3)緩存頁(yè)面與數(shù)據(jù)源的關(guān)系。
      [0081]步驟508,數(shù)據(jù)關(guān)聯(lián)。具體包括:
      [0082]I)建立數(shù)據(jù)源中的數(shù)據(jù)對(duì)象結(jié)構(gòu),數(shù)據(jù)源數(shù)據(jù)可以是結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù);
      [0083]2)數(shù)據(jù)標(biāo)準(zhǔn)化;[0084]3)建立頁(yè)面數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)的關(guān)系;
      [0085]4)建立數(shù)據(jù)源中數(shù)據(jù)之間的關(guān)系;
      [0086]5)緩存關(guān)聯(lián)關(guān)系。
      [0087]步驟510,代碼生成。具體包括:根據(jù)緩存關(guān)系按業(yè)務(wù)單元結(jié)構(gòu)生成html、js、后臺(tái)邏輯代碼。
      [0088]步驟512,自動(dòng)部署。
      [0089]圖6示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置的示意框圖。
      [0090]如圖6所示,根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置600,包括:數(shù)據(jù)解析單元602,用于對(duì)導(dǎo)入的設(shè)計(jì)完成的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析;數(shù)據(jù)源綁定單元604,用于根據(jù)所述業(yè)務(wù)Π數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)Π數(shù)據(jù)與所述數(shù)據(jù)源;數(shù)據(jù)關(guān)聯(lián)單元606,用于根據(jù)解析結(jié)果建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系;代碼生成單元608,用于根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)Π數(shù)據(jù)的后臺(tái)邏輯代碼。
      [0091]在該技術(shù)方案中,先由需求人員根據(jù)業(yè)務(wù)需求設(shè)計(jì)業(yè)務(wù)html頁(yè)面,然后通過(guò)對(duì)該html頁(yè)面相關(guān)的業(yè)務(wù)Π數(shù)據(jù)進(jìn)行解析,從而綁定后臺(tái)的數(shù)據(jù)源以及具體的數(shù)據(jù)源數(shù)據(jù),建立前臺(tái)的Π需求與后臺(tái)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,從而實(shí)現(xiàn)基于OSGI的代碼正向工程,即根據(jù)UI需求來(lái)自動(dòng)生成后臺(tái)以及全局(前臺(tái)與后臺(tái))的邏輯代碼。
      [0092]在上述技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)解析單元602用于:解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      [0093]在該技術(shù)方案中,對(duì)于業(yè)務(wù)Π數(shù)據(jù)的解析,主要涉及到對(duì)其中包含的頁(yè)面業(yè)務(wù)數(shù)據(jù)進(jìn)行結(jié)構(gòu)關(guān)系的解析過(guò)程;通過(guò)對(duì)頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系解析,從而一方面能夠清楚地了解到如何在前臺(tái)的頁(yè)面業(yè)務(wù)數(shù)據(jù)與后臺(tái)的數(shù)據(jù)源數(shù)據(jù)之間建立關(guān)聯(lián),另一方面則能夠據(jù)此了解到后臺(tái)的實(shí)際數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,確保通過(guò)正向工程正確生成對(duì)應(yīng)于業(yè)務(wù)Π數(shù)據(jù)的邏輯代碼。
      [0094]在上述任一技術(shù)方案中,優(yōu)選地,還包括:在線設(shè)計(jì)單元610,用于在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)UI數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、js腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      [0095]在該技術(shù)方案中,需求人員可以基于如OSGI平臺(tái)實(shí)現(xiàn)對(duì)前臺(tái)的業(yè)務(wù)Π頁(yè)面的在線設(shè)計(jì),從而有助于提高與后續(xù)的基于OSGI平臺(tái)的代碼正向工程的兼容性。當(dāng)然,此處并不限定其具體的生成方式,實(shí)際上,本領(lǐng)域技術(shù)人員應(yīng)該理解的是,顯然也可以通過(guò)其他方式獨(dú)立生成業(yè)務(wù)Π數(shù)據(jù)。
      [0096]在上述任一技術(shù)方案中,優(yōu)選地,還包括:模型建立單元612,用于建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及所述數(shù)據(jù)關(guān)聯(lián)單元606用于:根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      [0097]在該技術(shù)方案中,通過(guò)建立正向數(shù)據(jù)模型,使得能夠基于該模型,準(zhǔn)確、有效地實(shí)現(xiàn)對(duì)數(shù)據(jù)結(jié)構(gòu)關(guān)系的理解,并據(jù)此實(shí)現(xiàn)對(duì)數(shù)據(jù)關(guān)聯(lián)關(guān)系的準(zhǔn)確建立。
      [0098]在上述任一技術(shù)方案中,優(yōu)選地,所述數(shù)據(jù)源綁定單元604還用于:建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)UI數(shù)據(jù)。
      [0099]在該技術(shù)方案中,不同用戶如果屬于不同的角色,比如對(duì)于需求人員和開發(fā)人員,其具體對(duì)應(yīng)的數(shù)據(jù)源可以不同,從而有助于各個(gè)角色的用戶執(zhí)行對(duì)應(yīng)的處理任務(wù)。
      [0100]以上結(jié)合附圖詳細(xì)說(shuō)明了本發(fā)明的技術(shù)方案,本發(fā)明提出了一種基于OSGI的代碼正向工程的實(shí)現(xiàn)方法和一種基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置,通過(guò)本發(fā)明的技術(shù)方案,具有以下有益效果:
      [0101]I)快速開發(fā),能有效降低開發(fā)交互周期以及降低技術(shù)門檻;
      [0102]2)模塊化,特別是對(duì)于復(fù)雜的系統(tǒng)集成,能有效控制軟件復(fù)雜度增長(zhǎng)、避免或延緩架構(gòu)腐化;
      [0103]3 )動(dòng)態(tài)化,解決發(fā)版停機(jī)問(wèn)題;
      [0104]4)系統(tǒng)架構(gòu)統(tǒng)一。
      [0105]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      【權(quán)利要求】
      1.一種基于OSGI的代碼正向工程的實(shí)現(xiàn)方法,其特征在于,包括: 導(dǎo)入設(shè)計(jì)完成的業(yè)務(wù)UI數(shù)據(jù),并進(jìn)行解析; 根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源; 根據(jù)解析結(jié)果建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系; 根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)UI數(shù)據(jù)的后臺(tái)邏輯代碼。
      2.根據(jù)權(quán)利要求1所述的代碼正向工程的實(shí)現(xiàn)方法,其特征在于,解析所述業(yè)務(wù)UI數(shù)據(jù)的過(guò)程包括: 解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      3.根據(jù)權(quán)利要求1或2所述的代碼正向工程的實(shí)現(xiàn)方法,其特征在于,在導(dǎo)入所述業(yè)務(wù)UI數(shù)據(jù)之前,還包括: 在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)UI數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、js腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      4.根據(jù)權(quán)利要求1或2所述的代碼正向工程的實(shí)現(xiàn)方法,其特征在于,還包括: 建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及 根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      5.根據(jù)權(quán)利要求1或2所述的代碼正向工程的實(shí)現(xiàn)方法,其特征在于,還包括: 建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)UI數(shù)據(jù)。
      6.一種基于OSGI的代碼正向工程的實(shí)現(xiàn)裝置,其特征在于,包括: 數(shù)據(jù)解析單元,用于對(duì)導(dǎo)入的設(shè)計(jì)完成的業(yè)務(wù)UI數(shù)據(jù)進(jìn)行解析; 數(shù)據(jù)源綁定單元,用于根據(jù)所述業(yè)務(wù)UI數(shù)據(jù)建立數(shù)據(jù)源,并綁定所述業(yè)務(wù)UI數(shù)據(jù)與所述數(shù)據(jù)源; 數(shù)據(jù)關(guān)聯(lián)單元,用于根據(jù)解析結(jié)果建立所述業(yè)務(wù)UI數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系; 代碼生成單元,用于根據(jù)所述關(guān)聯(lián)關(guān)系生成對(duì)應(yīng)于所述業(yè)務(wù)UI數(shù)據(jù)的后臺(tái)邏輯代碼。
      7.根據(jù)權(quán)利要求6所述的代碼正向工程的實(shí)現(xiàn)裝置,其特征在于,所述數(shù)據(jù)解析單元用于: 解析所述業(yè)務(wù)Π數(shù)據(jù)中的頁(yè)面業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)關(guān)系。
      8.根據(jù)權(quán)利要求6或7所述的代碼正向工程的實(shí)現(xiàn)裝置,其特征在于,還包括: 在線設(shè)計(jì)單元,用于在線設(shè)計(jì)并發(fā)布所述業(yè)務(wù)UI數(shù)據(jù),發(fā)布內(nèi)容包括:頁(yè)面html、j s腳本和所述頁(yè)面業(yè)務(wù)數(shù)據(jù)。
      9.根據(jù)權(quán)利要求6或7所述的代碼正向工程的實(shí)現(xiàn)裝置,其特征在于,還包括: 模型建立單元,用于建立對(duì)應(yīng)于所述結(jié)構(gòu)關(guān)系的正向數(shù)據(jù)模型;以及 所述數(shù)據(jù)關(guān)聯(lián)單元用于:根據(jù)所述正向數(shù)據(jù)模型,建立所述業(yè)務(wù)Π數(shù)據(jù)與數(shù)據(jù)源數(shù)據(jù)之間、各數(shù)據(jù)源數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
      10.根據(jù)權(quán)利要求6或7所述的代碼正向工程的實(shí)現(xiàn)裝置,其特征在于,所述數(shù)據(jù)源綁定單元還用于: 建立對(duì)應(yīng)于當(dāng)前用戶所屬角色的數(shù)據(jù)源,以綁定至所述業(yè)務(wù)Π數(shù)據(jù)。
      【文檔編號(hào)】G06F9/44GK103677819SQ201310652672
      【公開日】2014年3月26日 申請(qǐng)日期:2013年12月5日 優(yōu)先權(quán)日:2013年12月5日
      【發(fā)明者】姜佰勝, 劉仁勇, 劉亞軍, 楊景慧, 周輝, 黃韶軍, 趙興成 申請(qǐng)人:深圳中興網(wǎng)信科技有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1