一種配置式菜單的生成方法
【專利摘要】本發(fā)明公布了一種配置式菜單生成方法,按照功能需求—構(gòu)件開發(fā)—構(gòu)件庫的建立——菜單設(shè)計——菜單可視化配置——菜單配置文件生成——配置文件加載——菜單生成的步驟進行軟件系統(tǒng)菜單配置和生成,利用構(gòu)件庫實現(xiàn)菜單項多類型構(gòu)件資源的集中管理,一方面可提高功能資源的重用程度,另一方面以配置式方式實現(xiàn)菜單項的可視化構(gòu)建,提高了菜單項構(gòu)建的靈活性及軟件系統(tǒng)的開發(fā)效率和質(zhì)量,節(jié)省軟件系統(tǒng)菜單制作的人力、物力及財力資源。
【專利說明】一種配置式菜單的生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機軟件【技術(shù)領(lǐng)域】,具體涉及一種配置式菜單的生成方法。
【背景技術(shù)】
[0002]隨著信息技術(shù)的發(fā)展,計算機技術(shù)不斷成熟,計算機軟件應用不斷涌現(xiàn),其應用逐漸普及,不同的軟件滿足了用戶多樣化的應用需求,如文字處理軟件、多媒體軟件,辦公自動化軟件等。這些軟件在企事業(yè)單位日常工作中發(fā)揮了重要的作用,大大提高了日常辦公的自動化程度??梢哉f,軟件成為現(xiàn)代人類生產(chǎn)、生活的強力工具。
[0003]基于構(gòu)件的軟件開發(fā)技術(shù)(Component-BasedSoftware Development,CBSD)是一種基于分布對象技術(shù)、強調(diào)通過可復用構(gòu)件設(shè)計與構(gòu)造軟件系統(tǒng)的軟件復用途徑。CBSD通過提供系統(tǒng)的可擴展性和可維護性來減少軟件開發(fā)的費用,更快的整合系統(tǒng),并能有效的降低大型系統(tǒng)的維護和升級壓力。
[0004]菜單是GUI應用程序開發(fā)設(shè)計當中不可或缺的重要元素,也是用戶與軟件系統(tǒng)交互的重要手段。為提高軟件系統(tǒng)的易操作性,軟件系統(tǒng)開發(fā)者提供了功能豐富、形式多樣、風格獨特的菜單。長期以來,軟件都是為解決具體的問題而開發(fā)的,一般都要經(jīng)歷需求分析、設(shè)計、編碼、測試、安裝部署、運行維護等過程,相應地,軟件系統(tǒng)的菜單也要進行不同的設(shè)計和實現(xiàn),這不僅出現(xiàn)了大量的重復性開發(fā),造成了大量的人力、物力浪費,而且軟件的質(zhì)量也難以保證。
【發(fā)明內(nèi)容】
[0005]為解決上述現(xiàn)有技術(shù)中軟件系統(tǒng)菜單因重復開發(fā)而造成大量的人力物力浪費而軟件質(zhì)量也難以保證等問題,本發(fā)明提供一種配置式菜單的生成方法,將構(gòu)件式軟件開發(fā)技術(shù)運用到軟件系統(tǒng)菜單生成中,利用構(gòu)件庫實現(xiàn)菜單項多類型構(gòu)件資源的集中管理,系統(tǒng)菜單功能資源可重用,由此實現(xiàn)配置式生成軟件系統(tǒng)的菜單并可靈活調(diào)整,從而節(jié)省軟件系統(tǒng)菜單制作的人力、物力及財力資源,提高軟件系統(tǒng)的開發(fā)效率和質(zhì)量。
[0006]本發(fā)明中,配置式指的是當軟件系統(tǒng)的功能需求發(fā)生變化時,不需要重新編寫程序,僅通過界面配置而得到新的軟件系統(tǒng)來滿足需求變化。構(gòu)件指的是系統(tǒng)中實際存在的可更換部分,它實現(xiàn)特定的功能,符合一套接口標準并實現(xiàn)一組接口。
[0007]配置式菜單的生成方法是根據(jù)計算機技術(shù)、軟件工程技術(shù)以及軟件集成原理,按照功能需求一構(gòu)件開發(fā)一構(gòu)件庫的建立——菜單設(shè)計——菜單可視化配置——菜單配置文件生成——配置文件加載——菜單生成的步驟進行軟件系統(tǒng)菜單配置和生成。
[0008]本發(fā)明的技術(shù)方案為:
[0009]一種配置式菜單的生成方法,該方法通過建立菜單項構(gòu)件庫與構(gòu)件元數(shù)據(jù)庫,菜單項構(gòu)件庫中的每個菜單項構(gòu)件對應一個菜單項,由此創(chuàng)建菜單配置信息XML文件,解析后生成菜單,包括如下步驟:
[0010]S1:建立菜單項構(gòu)件庫和菜單項構(gòu)件元數(shù)據(jù)庫
[0011]通過業(yè)務(wù)領(lǐng)域分析和設(shè)計,建立菜單項構(gòu)件庫和菜單項構(gòu)件元數(shù)據(jù)庫,其中,菜單項構(gòu)件庫包括多個菜單項構(gòu)件,每個菜單項構(gòu)件對應一個菜單項;
[0012]S2:創(chuàng)建菜單
[0013]在創(chuàng)建菜單時,根據(jù)菜單設(shè)計需要,菜單由一個或多個菜單項組成;
[0014]S3:對應每個菜單項,通過構(gòu)件元數(shù)據(jù)庫對菜單項構(gòu)件庫進行檢索,獲得相應的菜單項構(gòu)件
[0015]若從菜單項構(gòu)件庫中檢索到所需的菜單項構(gòu)件,則選取所需的菜單項構(gòu)件;若檢索不到所需的菜單項構(gòu)件,則建立新的菜單項構(gòu)件,并保存在菜單項構(gòu)件庫中,同時更新菜單項構(gòu)件元數(shù)據(jù)庫;
[0016]S4:將檢索獲得或新建的菜單項構(gòu)件,與相應菜單項的基本信息進行關(guān)聯(lián),生成菜單配置信息XML文件;
[0017]S5:對上述菜單配置信息XML文件進行解析,客戶端通過參數(shù)調(diào)用菜單項構(gòu)件,通過反射技術(shù)生成對應的菜單。
[0018]上述配置式菜單的生成方法中,進一步地,步驟SI建立菜單項構(gòu)件庫和構(gòu)件元數(shù)據(jù)庫具體包括如下步驟:
[0019]S11,通過對菜單功能需求進行分析,形成多個菜單項的功能設(shè)計說明書;
[0020]S12,根據(jù)業(yè)務(wù)領(lǐng)域分析和功能設(shè)計說明書,確定應用系統(tǒng)的各個操作單功能,通過編程語言(如JAVA),復用或新開發(fā)各個操作單功能構(gòu)件(子程序),對這些功能構(gòu)件進行封裝,構(gòu)成功能構(gòu)件集。
[0021]S13,根據(jù)數(shù)據(jù)庫表設(shè)計原理和方法設(shè)計菜單項描述表和菜單項基本信息表,確定表字段名稱、類型以及描述,其中菜單項描述表字段包括:菜單代碼、名稱、菜單級別、對應的URL地址(即單功能構(gòu)件所在的目錄和程序文件名稱)、有子菜單,其菜單代碼為主鍵,作為唯一標識,當某一菜單項無子菜單時,其URL字段值為相應功能程序名稱及其所在的子目錄;當有子菜單時,其URL字段為空,根據(jù)菜單級別調(diào)用下一級菜單選擇。菜單項基本信息表字段包括菜單的名稱、圖標、類型、級別、ID、位置、形狀、對應的快捷鍵。
[0022]S14,設(shè)計和實現(xiàn)菜單項功能構(gòu)件,其方法是對S13中設(shè)計的菜單項描述表進行組織菜單數(shù)據(jù),通過編程語言(如JAVA),以Menu類為中心,其它相關(guān)類作為輔助類,調(diào)用類里相關(guān)方法配置菜單項所要實現(xiàn)功能操作的功能構(gòu)件(即找到相對應的功能構(gòu)件所在目錄和程序文件名稱),生成計算機能夠識別和調(diào)用的構(gòu)件(如JAR),然后將所有開發(fā)封裝的各菜單項功能構(gòu)件組織集中到一起,形成菜單項構(gòu)件庫。構(gòu)件開發(fā)是需要遵循一定的開發(fā)規(guī)范和接口調(diào)用規(guī)范的,在本發(fā)明的實施例中,菜單功能構(gòu)件遵循的標準規(guī)范是JAVA應用程序開發(fā)規(guī)范;
[0023]S15,依據(jù)菜單項描述表組織的數(shù)據(jù)以及菜單項相對應的單功能構(gòu)件,填寫菜單項對應的單功能構(gòu)件元數(shù)據(jù)信息,包括構(gòu)件名稱、關(guān)鍵詞、ID、接口等信息,并將元數(shù)據(jù)信息保存在構(gòu)件元數(shù)據(jù)庫中,建立菜單功能項元數(shù)據(jù)庫,以備后期構(gòu)件查詢檢索時使用;
[0024]S16,檢查構(gòu)件是否符合構(gòu)件開發(fā)標準和規(guī)范,不符合規(guī)范的構(gòu)件將需要返工重新修改,符合規(guī)范的構(gòu)件保存在構(gòu)件庫中,建立菜單項構(gòu)件庫。
[0025]步驟S3進行菜單項構(gòu)件的檢索方法,包括樹狀層次瀏覽方法和術(shù)語關(guān)聯(lián)比對方法,樹狀層次瀏覽方法是基于構(gòu)件枚舉分類的結(jié)果,采用樹狀層次瀏覽的方式,一層一層展開,獲取相應的構(gòu)件;術(shù)語關(guān)聯(lián)比對方法是通過菜單項功能構(gòu)件名稱或關(guān)鍵詞或關(guān)聯(lián)術(shù)語進行查詢,具體查詢過程是用戶輸入某一關(guān)鍵詞,查詢檢索系統(tǒng)根據(jù)該關(guān)鍵詞對構(gòu)件元數(shù)據(jù)庫中的數(shù)據(jù)信息進行比對分析,然后將相關(guān)的或近似的構(gòu)件資源羅列出來。
[0026]步驟S3通過對菜單項功能構(gòu)件的檢索,若檢索到相應的菜單項功能構(gòu)件,則選取所需的菜單項功能構(gòu)件,并與菜單項的基本信息進行關(guān)聯(lián),生成菜單配置信息XML文件;若檢索不到所需的菜單項功能構(gòu)件,建立新的菜單項功能構(gòu)件,包括通過步驟SI中方法新建菜單項構(gòu)件和通過工作流管理系統(tǒng)對菜單項構(gòu)件進行聚合和重構(gòu)得到新的菜單項功能構(gòu)件。通過工作流管理系統(tǒng)對菜單項功能構(gòu)件進行聚合和重構(gòu)得到新的菜單項功能構(gòu)件具體為:
[0027]利用工作流管理系統(tǒng),確定工作流程的起始點和終止點,對檢索到的構(gòu)件進行聚合,即向菜單描述表里添加一個新的菜單項,并確定該菜單項的名稱以及菜單級別等信息,每一個菜單級別綁定一個功能構(gòu)件,對于每一個菜單級別都基于用戶權(quán)限訪問功能構(gòu)件集的一個子集,獲取到該子集的元數(shù)據(jù)信息、基本信息以及相應功能程序名稱及其所在的子目錄,得到新的菜單項功能構(gòu)件,存入到菜單構(gòu)件庫中。
[0028]步驟S5對S4中生成的菜單配置信息XML文件進行解析,客戶端通過參數(shù)調(diào)用菜單項功能構(gòu)件,并利用反射技術(shù)實現(xiàn)對應的菜單,具體包括如下步驟:
[0029]S51,設(shè)置客戶端菜單配置界面,用戶通過界面設(shè)置菜單配置參數(shù)進行菜單的配置,通過參數(shù)匹配進行相應的數(shù)據(jù)操作,如通過SQL語句里“select菜單代碼、菜單名稱、菜單級別、URL、有子菜單from菜單項描述表where菜單級別=’ O’”,執(zhí)行并得到查詢結(jié)果,通過菜單代碼和URL匹配調(diào)用菜單項構(gòu)件庫里相對應的菜單項功能構(gòu)件;
[0030]S52,對菜單配置信息XML文件進行解析并結(jié)合相對應的菜單項功能構(gòu)件,利用反射技術(shù)自動生成菜單程序。
[0031]本發(fā)明的有益效果為:
[0032]本發(fā)明的技術(shù)方案為配置式菜單生成方法,將構(gòu)件式軟件開發(fā)技術(shù)運用到軟件系統(tǒng)菜單生成中,利用構(gòu)件庫實現(xiàn)菜單項多類型構(gòu)件資源的集中管理,一方面可以提高功能資源的重用程度,另一方面提高了菜單項構(gòu)建的靈活性,以配置式方式實現(xiàn)菜單項的可視化構(gòu)建,提高了軟件系統(tǒng)的開發(fā)效率和質(zhì)量,節(jié)省軟件系統(tǒng)菜單制作的人力、物力及財力資源?;诒景l(fā)明所提供的配置式的菜單生成方法,用戶可以按照自己的管理風格和流程去搭建個性化的信息系統(tǒng),實現(xiàn)信息的集成,提高軟件的生產(chǎn)效率和質(zhì)量。
【專利附圖】
【附圖說明】
[0033]圖1是本發(fā)明的方法流程圖;
[0034]圖2是本發(fā)明一實施例的系統(tǒng)結(jié)構(gòu)框圖;
[0035]圖3是本發(fā)明一實施例配置式菜單制作的流程圖;
[0036]圖4是本發(fā)明一實施例系統(tǒng)菜單配置式生成流程圖。
【具體實施方式】
[0037]下面結(jié)合附圖和【具體實施方式】,對本發(fā)明進行進一步詳細描述,但不以任何方式限制本發(fā)明的范圍。
[0038]配置式菜單生成方法的流程如圖1所示,具體步驟包括:
[0039]S1:建立構(gòu)件庫和構(gòu)件元數(shù)據(jù)庫;
[0040]S2:根據(jù)構(gòu)件元數(shù)據(jù)庫中的信息,進行構(gòu)件的查詢檢索;
[0041]S3:利用工作流管理系統(tǒng)對構(gòu)件資源進行聚合和重構(gòu),生成新的功能構(gòu)件,并將生成的新的功能構(gòu)件保存在構(gòu)件庫中,同時更新構(gòu)件元數(shù)據(jù)庫,增加與新的功能構(gòu)件相對應的構(gòu)件元數(shù)據(jù)信息;
[0042]S4:根據(jù)菜單設(shè)計需要,從構(gòu)件庫中選取功能構(gòu)件,生成菜單配置信息XML文件;
[0043]S5:客戶端通過參數(shù)調(diào)用菜單項功能構(gòu)件,并利用反射技術(shù)實現(xiàn)對應的菜單;
[0044]進一步地,步驟SI建立構(gòu)件庫和構(gòu)件元數(shù)據(jù)庫具體包括如下步驟:
[0045]S11,通過對菜單功能需求進行分析,形成多個菜單項的功能設(shè)計說明書;
[0046]S12,根據(jù)業(yè)務(wù)領(lǐng)域分析和功能設(shè)計說明書,確定應用系統(tǒng)的各個單功能,通過編程語言(如JAVA),復用或新開發(fā)各個單功能構(gòu)件(子程序),對這些功能構(gòu)件進行封裝,構(gòu)成功能構(gòu)件集。
[0047]S13,根據(jù)數(shù)據(jù)庫表設(shè)計原理和方法設(shè)計菜單項描述表和菜單項基本信息表,確定表字段名稱、類型以及描述,其中菜單項描述表字段包括:菜單代碼、名稱、菜單級別、對應的URL地址(即單功能構(gòu)件所在的目錄和程序文件名稱)、有子菜單,其菜單代碼為主鍵,作為唯一標識,當某一菜單項無子菜單時,其URL字段值為相應功能程序名稱及其所在的子目錄;當有子菜單時,其URL字段為空,根據(jù)菜單級別調(diào)用下一級菜單選擇。菜單項基本信息表字段包括菜單的名稱、圖標、類型、級別、ID、位置、形狀、對應的快捷鍵。
[0048]S14,設(shè)計和實現(xiàn)菜單項功能構(gòu)件,其方法是對S13中設(shè)計的菜單項描述表進行組織菜單數(shù)據(jù),通過編程語言(如JAVA),以Menu類為中心,其它相關(guān)類作為輔助類,調(diào)用類里相關(guān)方法配置菜單項所要實現(xiàn)功能操作的功能構(gòu)件(即找到相對應的功能構(gòu)件所在目錄和程序文件名稱),生成計算機能夠識別和調(diào)用的構(gòu)件(如JAR),然后將所有開發(fā)封裝的各菜單項功能構(gòu)件組織集中到一起,形成菜單項構(gòu)件庫。構(gòu)件開發(fā)是需要遵循一定的開發(fā)規(guī)范和接口調(diào)用規(guī)范的,在這里菜單功能構(gòu)件遵循的標準規(guī)范是JAVA應用程序開發(fā)規(guī)范;
[0049]S15,依據(jù)菜單項描述表組織的數(shù)據(jù)以及菜單項相對應的單功能構(gòu)件,填寫菜單項對應的單功能構(gòu)件元數(shù)據(jù)信息,包括構(gòu)件名稱、關(guān)鍵詞、ID、接口等信息,并將元數(shù)據(jù)信息保存在構(gòu)件元數(shù)據(jù)庫中,建立菜單功能項元數(shù)據(jù)庫,以備后期構(gòu)件查詢檢索時使用;
[0050]S16,檢查構(gòu)件是否符合構(gòu)件開發(fā)標準和規(guī)范,不符合規(guī)范的構(gòu)件將需要返工重新修改,符合規(guī)范的構(gòu)件保存在構(gòu)件庫中,建立菜單項構(gòu)件庫;
[0051]步驟S2進行菜單項功能構(gòu)件的查詢檢索,具體包括如下步驟:
[0052]S21,依據(jù)菜單項的用途或用戶要求進行構(gòu)件查詢檢索,本發(fā)明方法提供兩種構(gòu)件查詢檢索方式;
[0053]S22,一種是基于構(gòu)件枚舉分類的結(jié)果,采用樹狀層次瀏覽的方式,一層一層展開,獲取相應的構(gòu)件;
[0054]S23,一種是通過菜單項功能構(gòu)件名稱或關(guān)鍵詞或關(guān)聯(lián)術(shù)語進行查詢,具體查詢過程是用戶輸入某一關(guān)鍵詞,查詢檢索系統(tǒng)根據(jù)該關(guān)鍵詞對構(gòu)件元數(shù)據(jù)庫中的數(shù)據(jù)信息進行比對分析,然后將相關(guān)的或近似的構(gòu)件資源羅列出來;
[0055]步驟S3利用工作流管理系統(tǒng)對構(gòu)件資源進行聚合和重構(gòu),具體包括如下步驟:
[0056]利用工作流管理系統(tǒng),確定工作流程的起始點和終止點,對檢索到的構(gòu)件進行聚合,即向菜單描述表里添加一個新的菜單項,并確定該菜單項的名稱以及菜單級別等信息,每一個菜單級別綁定一個功能構(gòu)件,對于每一個菜單級別都基于用戶權(quán)限訪問功能構(gòu)件集的一個子集,獲取到該子集的元數(shù)據(jù)信息、基本信息以及相應功能程序名稱及其所在的子目錄,得到新的菜單項功能構(gòu)件,存入到菜單構(gòu)件庫中;將聚合后的新的功能構(gòu)件保存在構(gòu)件庫中,并完善構(gòu)件元數(shù)據(jù)信息,以備后期調(diào)用。
[0057]在步驟S4中,若進行系統(tǒng)菜單配置,則具體包括如下步驟:
[0058]S41,定義菜單項屬性信息
[0059]定義菜單項,確定菜單的名稱、類型、級別、ID、位置、形狀、對應的快捷鍵等屬性信息;
[0060]S42,選擇功能項
[0061]利用構(gòu)件查詢檢索系統(tǒng),從構(gòu)件庫中檢索對應的功能構(gòu)件,并將其與菜單功能關(guān)聯(lián)起來;
[0062]S43,保存系統(tǒng)菜單配置信息
[0063]將系統(tǒng)菜單的配置信息保存在XML文件中,以備后期系統(tǒng)執(zhí)行式調(diào)用;
[0064]在步驟S4中,若進行彈出菜單配置,具體包括如下步驟:
[0065]S401,定義彈出菜單的基本信息
[0066]定義彈出菜單的基本信息,如彈出菜單的位置,彈出菜單對應的圖標、功能項、級別等基本彳目息;
[0067]S402,選擇功能項
[0068]利用構(gòu)件查詢檢索系統(tǒng),從構(gòu)件庫中檢索對應的功能構(gòu)件,并將其與菜單功能關(guān)聯(lián)起來;
[0069]S403,保存系統(tǒng)菜單配置信息
[0070]將彈出菜單的配置信息保存在XML文件中,以備后期系統(tǒng)執(zhí)行式調(diào)用;
[0071]菜單配置信息XML文件的結(jié)構(gòu)如下,通過菜單級別來區(qū)分菜單的層次,其中URL的內(nèi)容是菜單項所關(guān)聯(lián)的功能構(gòu)件所在的目錄:
[0072]〈Menue name = ” 文件"Icon = "wenjian.jpg^class = Vtype =
[0073]〈Menueltem name = ” 打開"Icon = "open, jpg^class = ^I^type =
[0074]〈Module name = 〃 打開文件 〃URL = ""/>
[0075]〈/Menueltem〉
[0076]〈Menueltem name = ” 保存"Icon = "save, jpg^class = Hype =
[0077]〈Module name = 〃 保存文件 〃URL = ""/>
[0078]</MenueItem>
[0079]〈/Menue〉
[0080]〈Menue name ="合同管理"Icon = "a.jpg"class = "0"type =
[0081]〈Menueltem name = ” 合同資料"Icon = "a.jpg^class = Hype =
[0082]〈Module name = 〃 添加"URL = ""/>
[0083]〈Module name = 〃 修改"URL = ""/>
[0084]〈/Menueltem〉
[0085]〈Menueltem name = ” 合同審核"Icon = "b.jpg^class = Hype =
[0086]〈Module name = 〃 合同打印"URL = ""/>
[0087]〈/Menueltem〉
[0088]〈/Menue〉
[0089]步驟S5解析菜單配置文件,生成菜單項,具體步驟包括:
[0090]S51.加載菜單配置文件;
[00 91]在軟件系統(tǒng)啟動時,將菜單配置文件加載到系統(tǒng)中;
[0092]S52解析菜單配置文件,生成菜單項
[0093]分別對系統(tǒng)菜單和彈出菜單配置XML文件進行解析,生成對應的菜單項。
[0094]本實施例采用上述配置式菜單生成方法實現(xiàn)一個配置式菜單生成系統(tǒng),圖2為該配置式菜單生成系統(tǒng)的結(jié)構(gòu)框圖,該系統(tǒng)包括構(gòu)件層、聚合層和菜單配置層,其中:
[0095]構(gòu)件層包括構(gòu)件數(shù)據(jù)庫和構(gòu)件元數(shù)據(jù)庫,構(gòu)件數(shù)據(jù)庫實現(xiàn)對類型菜單構(gòu)件功能資源的存儲和管理,構(gòu)件元數(shù)據(jù)庫實現(xiàn)對類型菜單構(gòu)件資源的元數(shù)據(jù)信息的存儲和管理,構(gòu)件層是配置式菜單生成系統(tǒng)的基礎(chǔ)支撐模塊。
[0096]聚合層主要包括工作流管理系統(tǒng)和構(gòu)件查詢檢索系統(tǒng),主要用來對構(gòu)件層的構(gòu)件資源進行加工和操作,其中工作流管理系統(tǒng)提供了方便的構(gòu)件聚合功能,基于此系統(tǒng),可以實現(xiàn)多個小粒度構(gòu)件功能資源的聚合和重構(gòu),以生成具有更大、更復雜功能的構(gòu)件資源,還可將新生成的構(gòu)件資源保存在構(gòu)件庫中,以備后期的系統(tǒng)調(diào)用。構(gòu)件查詢檢索系統(tǒng)主要負責滿足特定條件的構(gòu)件資源的查詢和獲取,提供了關(guān)鍵詞檢索、分層目錄檢索等多種檢索方式,幫助用戶方便快捷地查詢到所需要的構(gòu)件資源。
[0097]菜單配置層主要包括系統(tǒng)菜單設(shè)計器和彈出菜單設(shè)計器,其中系統(tǒng)菜單設(shè)計器主要實現(xiàn)系統(tǒng)菜單的屬性信息、功能信息的可視化配置;彈出菜單設(shè)計器主要實現(xiàn)彈出菜單的屬性信息、功能信息的可視化配置。這兩種菜單配置方式生成的菜單配置信息,都以XML文件的形式進行保存,以備后期系統(tǒng)運行時調(diào)用和解析。
[0098]圖3是通過配置式菜單生成系統(tǒng)制作配置式菜單的流程圖,具體步驟如下:
[0099]S1:分析菜單需求,形成菜單需求分析書;
[0100]S2:根據(jù)菜單需求分析書,從構(gòu)件庫中查詢檢索特定的菜單功能構(gòu)件;
[0101]S3:在系統(tǒng)菜單設(shè)計器和彈出菜單設(shè)計器中,進行菜單功能屬性的可視化配置;
[0102]S4:將菜單功能屬性的可視化配置信息,保存為XML文件。
[0103]S5:系統(tǒng)客戶端加載XML文件并進行解析,生成對應的菜單項。
[0104]本實施例通過配置式菜單生成系統(tǒng)進行系統(tǒng)菜單配置,如圖4所示,包括如下過程:
[0105]首先定義菜單項,具體是根據(jù)系統(tǒng)用途或用戶要求,確定軟件系統(tǒng)菜單,定義菜單項,包括菜單名稱、級別、位置等基本信息;
[0106]其次從構(gòu)件庫中選取相應的菜單功能項,如從構(gòu)件庫中選取與文件相關(guān)的功能項,文件打開、新建、保存和另存為等;
[0107]然后進行菜單項功能配置,對具體菜單項的屬性信息進行可視化配置,具體包括菜單項的類型、描述信息、ID號、關(guān)聯(lián)功能和功能參數(shù)等,如新建文件菜單項的類型為:系統(tǒng)菜單,描述為:新建文件,ID為:8889,關(guān)聯(lián)功能為:構(gòu)件庫中視圖構(gòu)件類下面的新建文件構(gòu)件;
[0108]將菜單項的配置信息保存在XML文件中,系統(tǒng)客戶端加載XML文件并解析,即可生成對應的菜單項。
【權(quán)利要求】
1.一種配置式菜單的生成方法,其特征是,所述方法通過創(chuàng)建菜單配置信息XML文件,再對菜單配置信息XML文件進行解析來生成菜單,具體包括如下步驟: 51:建立菜單項構(gòu)件庫和菜單項構(gòu)件元數(shù)據(jù)庫,所述菜單項構(gòu)件庫包括多個菜單項構(gòu)件,每個菜單項構(gòu)件對應一個菜單項的功能; 52:創(chuàng)建菜單,所述菜單由一個或多個菜單項組成; 53:對應S2中每個菜單項,通過SI所述菜單項構(gòu)件元數(shù)據(jù)庫對菜單項構(gòu)件庫進行檢索,若檢索不到所需的菜單項構(gòu)件,則建立新的菜單項構(gòu)件,并保存在菜單項構(gòu)件庫中,同時更新菜單項構(gòu)件元數(shù)據(jù)庫; 54:將步驟S3檢索獲得或新建的菜單項構(gòu)件,與相應菜單項的基本信息進行關(guān)聯(lián),生成菜單配置信息XML文件; 55:對步驟S4所述菜單配置信息XML文件進行解析,客戶端通過參數(shù)調(diào)用相應的菜單項構(gòu)件,通過反射技術(shù)生成對應的菜單。
2.如權(quán)利要求1所述配置式菜單的生成方法,其特征是,步驟SI建立菜單項構(gòu)件庫和菜單項構(gòu)件元數(shù)據(jù)庫具體包括如下過程: S11,通過對菜單功能需求進行分析,確定應用系統(tǒng)的各個操作單功能,獲得操作單功能設(shè)計說明書; S12,建立菜單項描述表和菜單項基本信息表; S13,對應Sll所述操作單功能設(shè)計說明,編程實現(xiàn)各個操作單功能構(gòu)件,通過封裝構(gòu)成操作單功能構(gòu)件集,并通過與S12所述菜單項描述表進行關(guān)聯(lián),形成菜單項構(gòu)件,從而建立菜單項構(gòu)件庫; S14,將菜單項描述表和菜單項功能構(gòu)件的基本信息與S12所述菜單項基本信息表進行關(guān)聯(lián),建立菜單項構(gòu)件元數(shù)據(jù)庫。
3.如權(quán)利要求2所述配置式菜單的生成方法,其特征是,步驟S12所述菜單項描述表的字段包括菜單項代碼、菜單項名稱、菜單項級別和對應的URL地址;菜單項代碼字段為主鍵;若一菜單項有子菜單,則對應的URL地址字段為空;若一菜單項無子菜單,則對應的URL地址字段值為步驟S13所述菜單項功能構(gòu)件子程序的名稱和子程序所在的子目錄;步驟S12所述菜單項基本信息表的字段包括菜單項名稱、菜單項圖標、菜單項類型、菜單項級別、菜單項ID、菜單項位置、菜單項形狀和菜單項對應快捷鍵。
4.如權(quán)利要求2所述配置式菜單的生成方法,其特征是,步驟S13所述菜單項功能構(gòu)件的編程實現(xiàn)是采用JAVA編程語言,通過調(diào)用Menu類和相關(guān)輔助類的方法來配置菜單項功能的操作,得到的菜單項功能構(gòu)件為JAR格式。
5.如權(quán)利要求1所述配置式菜單的生成方法,其特征是,步驟S3對菜單項構(gòu)件庫進行檢索的方法,包括樹狀層次瀏覽方法和術(shù)語關(guān)聯(lián)比對方法。
6.如權(quán)利要求1所述配置式菜單的生成方法,其特征是,步驟S3若檢索不到所需的菜單項功能構(gòu)件時,需建立新的菜單項功能構(gòu)件,所述建立新的菜單項功能構(gòu)件的方法包括通過步驟Si中新建菜單項構(gòu)件的方法和通過工作流管理系統(tǒng)對菜單項構(gòu)件進行聚合和重構(gòu)的方法。
7.如權(quán)利要求1所述配置式菜單的生成方法,其特征是,步驟S5所述的客戶端通過參數(shù)調(diào)用相應的菜單項構(gòu)件,具體過程是首先設(shè)置客戶端的菜單配置界面,通過菜單配置界面設(shè)置菜單配置參數(shù),通過菜單配置參數(shù)匹配操作,得到匹配的菜單項;再通過菜單項代碼和對應的URL地 址進行匹配,調(diào)用菜單項構(gòu)件庫里相對應的菜單項功能構(gòu)件。
【文檔編號】G06F9/44GK104077133SQ201410286094
【公開日】2014年10月1日 申請日期:2014年6月24日 優(yōu)先權(quán)日:2014年6月24日
【發(fā)明者】邢廷炎, 鄭春梅, 聶簫, 梁梅, 畢曉慶 申請人:中國地質(zhì)大學(北京)