專利名稱:一種開發無模式文檔型數據庫應用的業務組件模型的制作方法
技術領域:
本發明涉及一種快速開發應用軟件的模型,尤其涉及一種開發無模式文檔型數據庫應用的業務組件模型。
背景技術:
隨著Web2.0、大數據、云應用等技術的發展,傳統數據庫在I/O、可擴展性上遇到了瓶頸,大數據的存取訪問性能急劇下降。為了解決此問題,許多方案相繼提出,比如分布式數據庫、主從數據庫、無模式數據庫等。無模式數據庫,是一種模式自由的數據庫,其模式主要為關系、樹、圖、文檔等多種方式。無模式數據庫Web應用軟件是指基于Web,數據存取采用無模式數據庫的應用軟件,在大數據查詢、統計和分析等方面體現出性能優勢,成為一種新的應用模式。無模式文檔型數據庫,是無模式數據庫的一種,在大數據的前提下可以替代傳統的關系型數據庫,用于解決數據庫I/O、可擴展性的瓶頸問題。現有的技術中,使用模型驅動開發方法,通過業務組件配置、建模、轉換等方式快速生成一個可運行系統,在提高開發效率方面的作用尤其明顯。因此,借助于模型驅動的思想來加速無模式數據庫應用軟件開發的需求十分普遍。然而,現有的業務組件模型和模型驅動的軟件快速開發方法都是面向傳統關系數據庫的,缺乏對無模式數據庫的支持。由于數據庫模式不同,傳統關系型數據庫應用軟件快速開發方法不完全適用于新興的無模式數據庫應用。目前針對無模式數據庫應用軟件快速開發方法的領域尚屬空白。目前有大量使用模型驅動開發方法開發關系型數據庫應用軟件的成功案例,說明模型驅動軟件開發方法是成功的。雖然無模式數據庫剛剛提出,基于它的應用還不多,但是它的一些應用是非常需要的,尤其需要一種模型驅動的無模式數據庫應用軟件的快速開發方法。模型驅動開發的基本思想是一切都是模型,需要把業務邏輯用一種模型描述出來。而復雜的業務邏輯很難抽象成模型。
發明內容
本發明的目的就是為了解決上述問題,提供一種開發無模式文檔型數據庫應用的業務組件模型,通過直接運行創建的支持無模式文檔型數據庫的業務組件模型,取代傳統軟件調試、發布、部署繁瑣的工作過程,解決新興無模式文檔型數據庫應用軟件開發效率低的問題,降低開發難度。開發人員只需要使用無模式文檔型數據庫的業務組件模型對系統業務進行描述,通過模型轉換得到Web頁面文件。Web頁面文件、業務組件模型和模型執行引擎構成了最終可運行的應用軟件。為了實現上述目的,本發明采用如下技術方案:—種開發無模式文檔型數據庫應用的業務組件模型,包括業務組件模型,與模型執行引擎和Web頁面文件連接,描述無模式文檔型數據庫應用軟件的數據存儲、業務邏輯和用戶界面;
模型執行引擎,用于對業務組件模型進行解析,通過模型轉換,用業務組件模型替換模板文件中的表達式,從而生成Web頁面文件;Web頁面文件,為業務組件模型進行模型轉換后生成的系統Web頁面。所述業務組件模型包括依次連接的無模式文檔型數據庫的業務邏輯業務組件模型、數據存儲層業務組件模型和用戶界面層業務組件模型。所述模型執行引擎負責直接運行業務組件模型;通過直接運行業務組件模型、取代無模式數據庫應用軟件手工開發、發布、部署、調試繁瑣的過程;軟件研制不需要開發人員編碼,只需要設計人員使用業務運行系統對業務組件模型進行描述和建模,通過模型轉換生成Web頁面文件,即可得到可運行系統。下面分別說明各業務組件模型。首先,所述數據存儲層業務組件模型負責描述無模式文檔型數據庫中的數據對象。所述數據存儲層業務組件模型包括集合組件模型、文檔屬性組件模型。所述集合組件模型(Collection)描述一組二進制JavaScript對象記號(BinaryJavaScript Object Notation,簡稱BS0N)文檔的集合。每個文檔(Document)由多個鍵值序對組成。所述鍵值序對,包括鍵和值兩個元組,鍵表示該序對名稱,值表示該序對的值。由于無模式文檔型數據庫數據擁有動態模式特性,文檔結構支持同構和異構。集合組件模型用于描述業務數據與無模式數據庫中集合的映射關系,由無模式數據的集合名、數據范圍、描述信息等屬性組成。所述文檔屬性組件模型(Document Attribute)描述每個文檔的列存儲。由于無模式文檔型數據庫數據擁有動態模式特性,每個文檔屬性的鍵允許是不同的。文檔屬性組件模型描述業務數據與無模式文檔型數據庫中文檔鍵值序對的映射關系,由文檔屬性名和參考值等屬性組成。所述文檔屬性組件模型派生出三類細粒度的組件模型:數據類型文檔屬性組件模型、枚舉類型文檔屬性組件模型和按鈕類型文檔屬性組件模型。所述數據類型文檔屬性組件模型,用于描述文檔的列存儲,其取值范圍任意;所述枚舉類型文檔屬性組件模型,用于描述文檔的列存儲,其取值范圍限定為枚舉值;所述按鈕類型文檔屬性組件模型,用于描述自定義按鈕的文檔屬性,通過為按鈕定義相應的業務處理邏輯,將按鈕事件驅動式的業務集成到系統。所述數據類型文檔屬性組件,其參考值屬性為該文檔屬性數據的默認值;所述枚舉類型文檔屬性組件,其參考值屬性為文檔屬性數據枚舉集合;所述按鈕類型文檔屬性組件,其參考值屬性為點擊該按鈕時執行的業務邏輯組件標識。其次,所述業務邏輯業務組件模型用于描述無模式文檔型數據庫應用軟件中的業務邏輯。通過自定義按鈕的處理過程將特定的業務邏輯與業務模型運行有機集成起來,將業務邏輯與業務數據存取和展示分離。業務邏輯組件模型由業務名稱和業務值等屬性組成。所述業務邏輯業務組件模型派生出三類細粒度的組件模型:數據操作業務邏輯組件模型、頁面定向業務邏輯組件模型和織入代碼業務邏輯組件模型。
所述數據操作業務邏輯組件模型的業務值屬性可用結構化查詢語言(StructuredQuery Language,簡稱 SQL)、無結構化查詢語言(Unstructured Data Query Language,簡稱UnQL)、自定義函數等方式描述;所述頁面定向業務邏輯組件模型的業務值屬性可用重定向頁面的統一資源定位符(Uniform Resource Locator,簡稱 URL)描述;所述織入代碼業務邏輯組件模型的業務值屬性可用切入點對應的執行代碼塊標識描述。所述數據操作業務邏輯組件模型(Data Manipulation)是基于無模式文檔型數據庫的一種數據復合操作的業務邏輯;數據操作業務邏輯組件模型的業務值屬性可用一系列無模式文檔型數據庫的insert、update、remove復合操作、SQL、UnQL或自定義無模式數據庫函數等方式描述。所述頁面定向業務邏輯組件模型(Page Redirection)描述應用軟件中的Web頁面重定向;頁面定向組件模型通常用于描述按鈕類型文檔屬性模型的參考值,用于描述點擊按鈕要執行的業務邏輯。在頁面重定向過程中,需要保持原有Web請求中的參數和會話信息傳遞。頁面定向組件模型的業務值屬性是具體頁面定向的URL。所述織入代碼業務邏輯組件模型(Aspect Code)用于描述頁面定向業務邏輯組件模型和頁面定向業務邏輯組件模型無法描述的復雜業務邏輯;織入代碼組件模型通過織入代碼塊描述復雜的業務邏輯,為業務邏輯組件模型提供了一種靈活的擴展方式,適用于描述無法通過業務組件模型描述或無法抽象為模型的業務邏輯。織入代碼組件模型的業務值屬性為相應織入代碼塊標識。最后,所述用戶界面層業務組件模型,用于描述無模式文檔型數據庫中的業務數據在用戶界面上的Web展示。主要分為以下幾種業務組件模型:I)窗口組件模型(Window)描述業務數據展示的用戶界面,與權限管理中的一個菜單項頁面對應,由展示業務數據范圍、展示業務數據的排序方式、數據分頁大小、描述信息等屬性組成。用戶通過窗口組件模型描述的用戶界面訪問系統功能。所述用戶界面由多個Web標簽頁組成。2)單元組件模型(Unit)描述業務數據展示的用戶界面中的一個Web標簽頁,由標簽頁序號、描述信息、單元類型和展示數據對應的集合組件等屬性組成。按照Web標簽頁在用戶界面中出現的順序,單元類型分為主單元和從屬單元。單元類型為主單元的單元組件描述用戶界面中第一個出現的標簽頁,而單元類型為從屬單元的單元組件描述用戶界面中非第一個出現的標簽頁。用戶界面中的業務邏輯驅動的自定義按鈕位于主單元。3)元素組件模型(Element)描述Web標簽頁中的無模式文檔型數據庫中的文檔屬性的展示方式,由顯示序號、頁面默認值、是否可見和對應文檔屬性組件等屬性組成。關于專業術語的解釋:無模式文檔型數據庫,是一種無模式數據庫。無模式文檔型數據庫的數據被分組存儲在集合中,每個集合在數據庫中都有一個唯一的標識名,且包含無限數目的文檔。無模式文檔型數據庫中集合、文檔、文檔屬性的概念與關系數據庫中的表、行、列一一對應。無模式文檔型數據庫應用軟件采用無模式文檔型數據庫作為數據存儲,在Web用戶界面中展示業務數據和自定義按鈕,通過按鈕驅動系統業務邏輯。
組件是能夠完成某種功能并且向外提供若干個使用這種功能的接口的可重用集。組件模型是為了能夠完成某種功能對組件進行的抽象描述。組件模型由唯一標識和模型一個或多個模型屬性構成。組件模型標識用于唯一表示組件模型。每個組件模型標識是唯一且不相同的。唯一標識及其屬性為組件模型的構建要素。織入代碼塊,是業務邏輯組件模型的一種補充。將無法抽象為組件模型的可復用組件封裝為代碼塊,用于描述自定義按鈕點擊事件的業務邏輯。模板文件是由文本和表達式等語句組成的集合。模板中用到的數據被包裝成業務組件模型。模型轉換是使用業務組件模型表示的數據模型去替換模板文件中的表達式最終生成Web頁面文件的過程。模型執行引擎運行業務組件模型,是指在Web用戶界面中展示用戶界面層業務組件模型描述的業務數據和自定義按鈕,通過點擊業務邏輯業務組件模型描述的按鈕驅動系統業務邏輯,快速開發一個基本的無模式文檔型數據庫應用軟件。業務運行系統,是由描述業務的模型和代碼組成的可運行系統,系統數據、業務邏輯和數據展示方式由模型進行描述。其中,模型由模型執行引擎運行,而代碼由編程語言編譯成可執行文件運行。本發明的有益效果是:1、通過業務組件模型快速開發無模式文檔數據庫應用系統,改變無模式文檔型數據庫應用軟件手工開發方式,實現業務組件模型直接可運行,設計人員只需要創建和修改業務組件模型,通過模型轉換生成Web頁面文件,得到最終運行系統,從而改變了程序員直接編碼的開發方式,能在系統不間斷的情況下動態更改系統業務。2、本發明針對目前軟件快速開發方法或系統缺乏對無模式數據庫應用軟件的支持,提供一種開發無模式文檔型數據庫應用的業務組件模型,通過直接運行創建的支持無模式文檔型數據庫的業務組件模型,取代傳統軟件調試、發布、部署繁瑣的工作過程,解決新興無模式文檔型數據庫應用軟件開發效率低的問題,降低開發難度。3、本發明提供的業務組件模型中的數據存儲層業務組件模型,是描述無模式文檔型數據庫數據的。該模型的提供為現有業務組件模型增加無模式數據庫數據描述的支持。4、本發明提供的業務組件模型中的織入代碼組件模型通過織入代碼塊描述復雜的業務邏輯,為業務邏輯組件模型提供了一種靈活的擴展方式,適用于描述無法通過業務組件模型描述或無法抽象為模型的業務邏輯。該方法有助于將任意業務邏輯的描述模型化,而模型化是進行模型驅動開發的輸入。5、在業務組件模型中本發明提供了一種叫織入代碼組件模型,就是來描述復雜業務邏輯的,因為很復雜的業務邏輯都是可以直接用代碼表示的。
圖1業務組件模型驅動的無模式文檔型數據庫應用軟件快速開發系統架構圖;圖2無模式文檔型數據庫數據存儲層業務組件和業務邏輯組件模型屬性構成示意圖;圖3用戶界面層業務組件模型屬性構成示意圖4用戶界面層業務組件模型所描述的用戶界面布局。其中,100、集合組件模型,101、文檔屬性組件模型,102、數據類型文檔屬性組件模型,103、枚舉類型文檔屬性組件模型,104、按鈕類型文檔屬性組件模型,105、業務邏輯組件模型,106、數據操作業務邏輯組件模型,107、頁面定向業務邏輯組件模型,108、織入代碼業務邏輯組件模型,110、窗口組件模型,111、單元組件模型,112、元素組件模型,120、模型執行引擎,121、業務組件模型,122、模型轉換,123、Web頁面文件,124、用戶界面層業務組件模型,125、數據存儲層業務組件模型,126、業務邏輯業務組件模型,127、模板文件,140、工具欄區域,141、標簽頁區域,142、數據區域。
具體實施例方式下面結合附圖與實施例對本發明作進一步說明。圖1為本發明業務組件模型驅動的無模式文檔型數據庫應用軟件快速開發系統架構圖。一種快速開發無模式文檔型數據庫應用軟件的業務組件模型,包括業務組件模型121,所述業務組件模型121與模型執行引擎120、業務組件模型121和Web頁面文件123連接,所述模型執行引擎120用于對業務組件模型121進行解析,通過模型轉換122,生成Web頁面文件123 ;所述業務組件模型121描述了無模式文檔型數據庫應用軟件的數據存儲、業務邏輯和用戶界面,包括無模式文檔型數據存儲層業務組件模型125、業務邏輯業務組件模型126和用戶界面層業務組件模型124 ;其中,無模式文檔型數據存儲層業務組件模型125與業務邏輯業務組件模型126相互連接;用戶界面層業務組件模型124與無模式數據存儲層業務組件模型125相互連接;模型轉換122使用業務組件模型121表示的數據模型去替換模板文件127中的表達式最終生成Web頁面文件123 ;所述Web頁面文件123為業務組件模型121進行模型轉換122后的生成的系統Web頁面。本發明中的業務組件模型121可以通過配置、定義和擴展等方式進行豐富,從而支持更多特殊應用和業務邏輯。所述模型執行引擎120運行業務組件模型121,在Web用戶界面中展示用戶界面層業務組件模型124描述的業務數據和自定義按鈕,通過點擊業務邏輯業務組件模型126描述的按鈕驅動系統業務邏輯,快速開發一個基本的無模式文檔型數據庫應用軟件;通過直接運行業務組件模型121、取代無模式數據庫應用軟件手工開發、發布、部署、調試繁瑣的過程;軟件研制不需要開發人員編碼,只需要設計人員使用業務運行系統對業務組件模型121進行描述和建模,通過模型轉換122生成Web頁面文件123,即可得到可運行系統。圖2為本發明裝置無模式文檔型數據庫數據存儲層業務組件和業務邏輯組件模型屬性構成示意圖,給出了集合組件模型100、文檔屬性組件模型101、數據類型文檔屬性組件模型102、枚舉類型文檔屬性組件模型103、按鈕類型文檔屬性組件模型104、業務邏輯組件模型105的常用屬性、關系及其構建要素。所述無模式數據存儲層業務組件模型包括集合組件模型100、文檔屬性組件模型101。其中文檔屬性組件模型101派生出三類細粒度的組件模型:數據類型文檔屬性組件模型102、枚舉類型文檔屬性組件模型103和按鈕類型文檔屬性組件模型104 ;所述業務邏輯組件模型105派生出三類細粒度的組件:數據操作業務邏輯組件模型106、頁面定向業務邏輯組件模型107和織入代碼業務邏輯組件模型108。所述無模式文檔型數據存儲層業務組件模型負責描述無模式文檔型數據庫中的數據對象。所述集合組件模型100 (Collection)描述一組二進制JavaScript對象記號(Binary JavaScript Object Notation,簡稱 BS0N)文檔的集合。每個文檔(Document)由多個鍵值序對組成。所述鍵值序對,包括鍵和值兩個元組,鍵表示該序對名稱,值表示該序對的值。由于無模式文檔型數據庫數據擁有動態模式特性,文檔結構支持同構和異構。集合組件模型100用于描述業務數據與無模式數據庫中集合的映射關系,由無模式數據的集合名、數據范圍、描述信息等屬性組成。所述文檔屬性組件101 (Document Attribute)描述每個文檔中鍵值序對。,由于無模式文檔型數據庫數據擁有動態模式特性,每個文檔的鍵可以是不同的。文檔屬性組件模型101描述業務數據與無模式文檔型數據庫中文檔鍵值序對的映射關系,由文檔屬性名和參考值等屬性組成。所述數據類型文檔屬性組件模型102,其參考值屬性為該文檔屬性數據的默認值;所述枚舉類型文檔屬性組件模型103,其參考值屬性為文檔屬性數據枚舉集合;所述按鈕類型文檔屬性組件模型104,其參考值屬性為點擊該按鈕時執行的業務邏輯組件模型105。所述業務邏輯業務組件105模型用于描述無模式文檔型數據庫應用軟件中的業務邏輯。通過自定義按鈕的處理過程將特定的業務邏輯與業務模型運行有機集成起來,將業務邏輯與業務對象存取和展示分離。業務邏輯組件模型105由業務名稱和業務值等屬性組成。所述業務邏輯業務組件模型105派生出三類細粒度的組件模型:數據操作業務邏輯組件模型106、頁面定向業務邏輯組件模型107和織入代碼業務邏輯組件模型108。數據操作業務邏輯組件模型106的業務值屬性可用結構化查詢語言(Structured QueryLanguage,簡稱 SQL)、無結構化查詢語言(Unstructured Data Query Language,簡稱UnQL)、自定義函數等方式描述;頁面定向業務邏輯組件模型107的業務值屬性可用重定向頁面的統一資源定位符(Uniform Resource Locator,簡稱URL)描述;織入代碼業務邏輯組件模型108的業務值屬性可用切入點對應的執行代碼塊標識描述。所述數據操作業務邏輯組件模型106 (Data Manipulation)是基于無模式文檔型數據的一種復合操作的業務邏輯;數據操作組件模型106的業務值屬性可用一系列無模式數據庫的insert、update、remove復合操作、SQL、UnQL或自定義無模式數據庫函數等方式描述。所述頁面定向業務邏輯組件模型107 (Page Redirection)描述應用軟件中的頁面重定向,頁面定向組件模型通常用于描述按鈕類型文檔屬性模型的參考值,用于描述點擊按鈕要執行的業務邏輯。在頁面重定向過程中,需要保持原有Web請求中的參數和會話信息傳遞。頁面定向組件模型107的業務值屬性是具體頁面定向的URL。所述織入代碼業務邏輯組件模型108 (Aspect Code)用于描述頁面定向業務邏輯組件模型106和頁面定向業務邏輯組件107無法描述的業務邏輯;織入代碼業務邏輯組件108通過織入代碼片段描述復雜的業務邏輯;織入代碼業務邏輯組件108為業務邏輯組件提供了一種靈活的擴展方式,適用于描述無法通過業務組件模型121描述的業務邏輯。織入代碼業務邏輯組件模型108的業務值屬性為相應織入代碼塊標識。
圖3為本發明裝置用戶界面層業務組件模型屬性構成示意圖,給出了窗口組件模型110、單元組件模型111和元素組件模型112模型的常用屬性、關系和構建要素。所述用戶界面層業務組件模型124,用于描述無模式文檔型數據庫中的業務數據在用戶界面上的Web展示。主要分為以下幾種:I)窗口組件模型110 (Window),描述業務數據展示的用戶界面,與權限管理中的一個菜單項頁面對應,由展示業務數據范圍、展示業務數據的排序方式、數據分頁大小、描述信息等屬性組成。2)單元組件模型lll(Unit),描述業務數據展示的用戶界面中的一個Web標簽頁,由標簽頁序號、描述信息、單元類型和展示數據對應的集合組件100等屬性組成。按照Web標簽頁在用戶界面中出現的順序,單元類型分為主單元和從屬單元。單元類型為主單元的單元組件描述用戶界面中第一個出現的標簽頁,而單元類型為從屬單元的單元組件描述用戶界面中非第一個出現的標簽頁。用戶界面中的業務邏輯驅動的自定義按鈕位于主單元。3)元素組件模型112 (Element),描述Web標簽頁中的無模式文檔型數據庫中的數據文檔屬性的展示方式,由顯示序號、文檔屬性頁面顯示的默認值、是否可見和對應文檔屬性組件101等屬性組成。圖4為用戶界面層業務組件模型所描述的用戶界面布局,將用戶界面分為工具欄區域140、標簽頁區域141和數據區域142。其中窗口組件模型110用于描述用戶界面整體,限定用戶界面的數據范圍、數據區域142中的鍵排序、數據區域142的分頁大小等信息;窗口組件111用于描述一個標簽頁,即標簽頁區域141中的主單元或從單元;元素組件模型112用于描述數據區域142中的每列數據的展示方式,給出指定列的默認值和是否可見等。上述雖然結合附圖對本發明的具體實施方式
進行了描述,但并非對本發明保護范圍的限制,所屬領域技術人員應該明白,在本發明的技術方案的基礎上,本領域技術人員不需要付出創造性勞動即可做出的各種修改或變形仍在本發明的保護范圍以內。
權利要求
1.一種開發無模式文檔型數據庫應用的業務組件模型,其特征是,包括 業務組件模型,與模型執行引擎和Web頁面文件連接,描述無模式文檔型數據庫應用軟件的數據存儲、業務邏輯和用戶界面; 模型執行引擎,負責直接運行業務組件模型;使用業務運行系統對業務組件模型進行描述和建模,通過模型轉換生成Web頁面文件,即得到可運行系統; Web頁面文件,為業務組件模型進行模型轉換后生成的系統Web頁面。
2.如權利要求1所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是,所述業務組件模型包括依次連接的無模式文檔型數據庫的業務邏輯業務組件模型、數據存儲層業務組件模型和用戶界面層業務組件模型。
3.如權利要求2所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述數據存儲層業務組件模型負責描述無模式文檔型數據庫中的數據對象,所述數據存儲層業務組件模型包括集合組件模型、文檔屬性組件模型; 所述業務邏輯業務組 件模型用于描述無模式文檔型數據庫應用軟件中的業務邏輯,通過自定義按鈕的處理過程將特定的業務邏輯與業務模型運行有機集成起來,將業務邏輯與業務數據存取和展示分離,業務邏輯組件模型由業務名稱和業務值屬性組成; 所述用戶界面層業務組件模型,用于描述無模式文檔型數據庫中的業務數據在用戶界面上的Web展示。
4.如權利要求3所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述集合組件模型描述一組二進制JavaScript對象記號文檔的集合,每個文檔由多個鍵值序對組成;所述鍵值序對,包括鍵和值兩個元組,鍵表示該序對名稱,值表示該序對的值;由于無模式文檔型數據庫數據擁有動態模式特性,文檔結構支持同構和異構;集合組件模型用于描述業務數據與無模式數據庫中集合的映射關系,由無模式數據的集合名、數據范圍、描述信息屬性組成。
5.如權利要求3所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述文檔屬性組件模型描述每個文檔的列存儲;由于無模式文檔型數據庫數據擁有動態模式特性,每個文檔屬性的鍵允許是不同的;文檔屬性組件模型描述業務數據與無模式文檔型數據庫中文檔鍵值序對的映射關系,由文檔屬性名和參考值屬性組成。
6.如權利要求3或5所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述文檔屬性組件模型派生出三類細粒度的組件模型:數據類型文檔屬性組件模型、枚舉類型文檔屬性組件模型和按鈕類型文檔屬性組件模型; 所述數據類型文檔屬性組件模型,用于描述文檔的列存儲,其取值范圍任意; 所述枚舉類型文檔屬性組件模型,用于描述文檔的列存儲,其取值范圍限定為枚舉值; 所述按鈕類型文檔屬性組件模型,用于描述自定義按鈕的文檔屬性,通過為按鈕定義相應的業務處理邏輯,將按鈕事件驅動式的業務集成到系統。
7.如權利要求6所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述數據類型文檔屬性組件,其參考值屬性為該文檔屬性數據的默認值; 所述枚舉類型文檔屬性組件,其參考值屬性為文檔屬性數據枚舉集合; 所述按鈕類型文檔屬性組件,其參考值屬性為點擊該按鈕時執行的業務邏輯組件標識。
8.如權利要求3所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述業務邏輯業務組件模型派生出三類細粒度的組件模型:數據操作業務邏輯組件模型、頁面定向業務邏輯組件模型和織入代碼業務邏輯組件模型; 所述數據操作業務邏輯組件模型的業務值屬性用結構化查詢語言、無結構化查詢語言、自定義函數方式描述; 所述頁面定向業務邏輯組件模型的業務值屬性用重定向頁面的統一資源定位符描述; 所述織入代碼業務邏輯組件模型的業務值屬性用切入點對應的執行代碼塊標識描述。
9.如權利要求8所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述數據操作業務邏輯組件模型是基于無模式文檔型數據庫的一種數據復合操作的業務邏輯;數據操作業務邏輯組件模型的業務值屬性用一系列無模式文檔型數據庫的insert、update、remove復合操作、SQL、UnQL或自定義無模式數據庫函數方式描述; 所述頁面定向業務邏輯組件模型描述應用軟件中的Web頁面重定向;頁面定向組件模型通常用于描述按鈕類型文檔屬性模型的參考值,用于描述點擊按鈕要執行的業務邏輯;在頁面重定向過程中,需要保持原有Web請求中的參數和會話信息傳遞;頁面定向組件模型的業務值屬性是具體頁面定向的URL ; 所述織入代碼業務邏輯組件模型用于描述頁面定向業務邏輯組件模型和頁面定向業務邏輯組件模型無法描述的復雜業務邏輯;織入代碼組件模型通過織入代碼塊描述復雜的業務邏輯,為業務邏輯組件模型提供了一種靈活的擴展方式,適用于描述無法通過業務組件模型描述或無法抽象為模型的業務邏輯,織入代碼組件模型的業務值屬性為相應織入代碼塊標識。
10.如權利要求3所述的一種開發無模式文檔型數據庫應用的業務組件模型,其特征是, 所述用戶界面層業務組件模型主要分為以下幾種業務組件模型: 1)窗口組件模型描述業務數據展示的用戶界面,與權限管理中的一個菜單項頁面對應,由展示業務數據范圍、展示業務數據的排序方式、數據分頁大小、描述信息屬性組成,用戶通過窗口組件模型描述的用戶界面訪問系統功能,所述用戶界面由多個Web標簽頁組成; 2)單元組件模型描述業務數據展示的用 戶界面中的一個Web標簽頁,由標簽頁序號、描述信息、單元類型和展示數據對應的集合組件屬性組成,按照Web標簽頁在用戶界面中出現的順序,單元類型分為主單元和從屬單元,單元類型為主單元的單元組件描述用戶界面中第一個出現的標簽頁,而單元類型為從屬單元的單元組件描述用戶界面中非第一個出現的標簽頁,用戶界面中的業務邏輯驅動的自定義按鈕位于主單元; 3)元素組件模型描述Web標簽頁中的無模式文檔型數據庫中的文檔屬性的展示方式,由顯示序號 、頁面默認值、是否可見和對應文檔屬性組件屬性組成。
全文摘要
本發明公開了一種開發無模式文檔型數據庫應用的業務組件模型,包括無模式數據存儲層業務組件、業務邏輯業務組件和用戶界面層業務組件。無模式數據存儲層業務組件包括集合組件、文檔屬性組件;業務邏輯業務組件包括數據操作業務邏輯組件、頁面定向業務邏輯組件和織入代碼業務邏輯組件;用戶界面層業務組件,包括窗口組件、單元組件和元素組件。本發明解決無模式數據庫應用軟件開發效率低的問題,通過直接運行業務組件模型,取代傳統軟件調試、發布、部署繁瑣的工作過程,開發人員僅使用無模式數據庫的業務組件對系統業務進行描述和建模,通過模型轉換和模型同步得到Web頁面文件,Web頁面文件、業務組件和模型執行引擎構成最終可運行的Web應用軟件。
文檔編號G06F17/30GK103197932SQ20131013927
公開日2013年7月10日 申請日期2013年4月19日 優先權日2013年4月19日
發明者馬坤, 楊波, 陳廣偉 申請人:濟南大學