基於數據表模型封裝的網頁開發方法
2023-06-14 06:44:46
專利名稱:基於數據表模型封裝的網頁開發方法
技術領域:
本發明涉及網絡傳輸方法,尤其涉及一種網頁開發的方法。
背景技術:
隨著網際網路技術的不斷發展,目前用來開發信息業務管理系統(包括管理信息系 統MIS,客戶管理系統CRM,企業資源管理系統ERP等等)的開發方法已經有基於瀏覽器/服 務器架構(Browse/Server,簡稱BS架構)的方法,該方法最核心的開發內容就是數據結構 和資料庫定義以及業務邏輯,而其中,業務邏輯的展現都是通過超文本傳輸協議(http)展 現給客戶端的,這就需要我們要花很多時間來解決網頁的客戶端展現問題,使得開發人員 的大部分的精力無法放在核心的資料庫結構設計和業務邏輯方面。可見,業界存在著一種技術需求提供一種網頁開發的方法,使得網頁的客戶端的 展現可配置化、模塊化,並實現高度的擴展性。
發明內容
本發明的目的是提供一種網頁開發方法,解決現有技術的缺陷,使得網頁的客戶 端的展現可配置化、模塊化,並實現高度的擴展性。本發明的技術方案如下一種基於數據表模型封裝的網頁開發方法,包含如下步驟封裝資料庫操作,數據引擎以ADO方式與資料庫連接,封裝所有資料庫操作,形成 數據流;處理具體數據,Table Resolver類模塊接收從ADO數據引擎中傳輸出來的數據 流,Table Resolver類模塊與資料庫中的每張數據表一一對應,並與指定的DataXml文件 相結合,形成帶數據的XML流;產生Web Page能夠調用的Xml流,XML DataSet指定對應表單的Module XML文 件,調用帶數據的Xml流,將帶數據的Xml流與Module Xml文件相結合,產生Web Page能 夠調用的Xml流;XSlt模板與該Web Page能夠調用的Xml流組合,形成對資料庫的操作功能。本發明的優點是1.數據層與顯示層分離在數據層,數據以XML(eXtensible Markup Language, 可擴展標識語言)的形態存在,顯示層採用XSLT (Extensible Style Language Transformation,可擴展樣式表語言翻譯)將數據層的XML轉化為HTML (Hyper Text Mark-up Language,超文本標記語言)顯示給用戶,數據層沒有HTML代碼,僅僅包含業務邏輯。2.基本操作的封裝封裝了數據列表、查詢、新建、修改、刪除等基本的操作,如果 僅僅是基本的操作,幾分鐘就可以快速開發出來。3.多資料庫平臺支持以目前開發環境經常使用SQL Server和Oracle作為數 據庫平臺,此外,還有其他資料庫平臺,需要使用每種資料庫所支持的SQL和函數都有所不
3同,系統針對這些進行了封裝,只要調整一下系統配置的參數,即可切換資料庫,而無需修 改程序。4.插件式編程利用C#的Attribute的強大功能,系統可以開發了大量的插件模 塊,插件功能可以使程序功能高度模塊化,也給系統本身帶來了強大的擴展性,以前不支持 的功能,今後也可以通過插件來補充。
5.開發式的接口模式由於系統內部的數據流全部採用XML格式,這樣,在和其它 系統進行數據交換時,就可以非常方便的使用http獲取xml數據流的方式進行各系統之間 的數據交換。
下面結合附圖,通過對本發明的具體實施方式
的詳細描述,將使本發明的技術方 案及其他有益效果顯而易見。圖1為本發明的整體流程圖;圖2為本發明方法的數據處理流程圖。
具體實施例方式為了更進一步了解本發明的特徵,請參閱以下有關本發明的詳細說明與附圖,然 而所附圖式僅提供參考與說明之用,並非用來對本發明的保護範圍加以限制。如圖1和圖2所示,ADO數據引擎106以ADO方式實現與資料庫101的連接,並 對所有的資料庫操作執行封裝步驟201,形成數據流110。Table ReSOlverl07是與資料庫 101的表單對應的處理具體數據的類模塊。每張數據表都有一個對應的TableResolver類 模塊,在Table Resolverl07中將指定對應表單的Data Xml文件,這樣從ADO數據引擎106 中選取出來的數據就和Table Resolverl07中指定的DataXml文件相結合,形成帶數據的 XML流112,如圖2的步驟202所示。Data XML102中的每個文件實際上是後臺資料庫表的一張表的說明。它被Web PagelOQ和用戶界面105的顯示層XSLT模板104共同調用,具備了數據和顯示雙重功能。 因為是數據和顯示都共享Data XML,所以,在開發的時候只要維護這一份XML,就可以了。這 樣做也使得開發程序變得更加便捷。在 Data XML102 中,通過 TableName、tk:FieldName、tk:DisplayName、tk:Length、 IsKey.DataType.IsEmpty等標籤,為本方法提供了必要的數據信息,本方法通過這些信息, 自動給相關的屬性賦值,添加相應的數據校驗等等,大大降低了代碼量。同時,在 DataXML102 中,通過 TableName、tk:FieldName、tk:DisplayName、 tk:Display> tk:Extension、tk: Insert、tk:Update> tk:Detail、tk:List、HtmlCtrl 等標 籤,為XSLT模板104提供了足夠多的顯示信息。XSLT模板104通過分析此XML,自動生成 Insert、Update、Detail和List的界面,除非有特殊需要,通常情況下,XSLT模板104無需 寫任何代碼,就可以完成顯示。程序與顯示共享,是本發明方法的最重要的特點。同時,Data XML102僅僅對應於 資料庫101中的一張表,縮小了程序的粒度,提供了一個比較粗放的OR Mapping(對象-關 系映射)結構。
XML DataSet 108是用於指定對應表單的Module XML 103文件,同時調用Data Xml 102與TableResolverl06相結合的帶數據的Xml流112,準備與Module Xml 103文件 相結合產生Web Page 109能夠調用的Xml流113,如圖2的步驟203所示。Module XML103是為系統註冊的XML DataSet 108服務的。它的每個文件實際上就是一個功能的說明。它同時被WebPage109和界面顯示層XSLT 104共同調用,即其具備 了數據和顯示雙重功能。因為數據和顯示的配置都共享Module XML103,所以,在開發的時 候只要維護這一份XML,就可以了。這樣做也使得開發程序變得更加便捷。Module XML103 的 tk:DataSet 標籤註明了 將使用哪一種註冊的 XML DataSet 108,相應的DataSet就會讀取Module XML103中的信息,然後產生相應的行為。由於XML DataSet 108各自具有不同的功能,其複雜度也各不相同,所以每種XML DataSet 108對 Module XML103的格式要求也不一樣。這就造成了 ModuleXML103非常複雜,在不同的XML DataSetl08下有不同的格式。同時,在 Module XML103 中,通過 tk:Resolver、tk:Xml、Style、List、DetailList、 Main、Type等標籤,定義了每張表是否需要顯示,以及顯示的格式。這樣XSLT模塊104通 過分析此XML,自動組合出所需要的界面。Module XML103 就是通過組合 Data XML102 以及 Table Resolverl08 來形成各 種簡單或者複雜的功能。本發明方法已經提供了十種左右的模型,涵蓋了常用的Web開 發模式,它們可以供組合。此外Module XML103也是程序與顯示共享,加之相關的XML DataSetlOS經過精巧的設計,所以在功能方面,無需編程,僅僅通過配置相關的Module XML103就可以完成功能。當Web pagel09需要請求對應的數據表中的數據的時候,軟體根據用戶請求的 頁面的數據表單,將對應的數據表數據選取出來,和對應表單的Data XML103文件結合形 成帶數據的XML流,然後將和對應的XSlt模板104中的文件結合,就會形成基本的List, Insert,Edit,Detail等基本的Html文件,如圖2的步驟204所示,最後由瀏覽器展現給終 端用戶。同樣,用戶發送的新增、修改、刪除表單數據的請求,將由瀏覽器把用戶更改的數據 組合為XML流,交由底層的數據引擎,數據引擎根據Data XML 103文件將具體的數據進行 分解,最後形成資料庫的增刪改動作,實現對資料庫的操作。
權利要求
一種基於數據表模型封裝的網頁開發方法,其特徵在於,包含如下步驟封裝資料庫操作,數據引擎以ADO方式與資料庫連接,封裝所有資料庫操作,形成數據流;處理具體數據,Table Resolver類模塊接收從ADO數據引擎中傳輸出來的該數據流,該Table Resolver類模塊與該資料庫中的每張數據表一一對應,並與指定的DataXml文件相結合,形成帶數據的XML流;產生Web Page能夠調用的Xml流,XML DataSet指定對應表單的Module XML文件,調用該帶數據的Xml流,將該帶數據的Xml流與Module Xml文件相結合,產生Web Page能夠調用的Xml流;XSlt模板與該Web Page能夠調用的Xml流組合,形成對資料庫的操作功能。
2.如權利要求1所述的一種基於數據表模型封裝的網頁開發方法,其特徵在於,該對 資料庫的操作功能為如下之一新增、修改、刪除表單。
全文摘要
一種基於數據表模型封裝的網頁開發方法,包含如下步驟封裝資料庫操作,數據引擎以ADO方式與資料庫連接,封裝所有資料庫操作,形成數據流;處理具體數據,Table Resolver類模塊接收從ADO數據引擎中傳輸出來的數據流,Table Resolver類模塊與資料庫中的每張數據表一一對應,並與指定的DataXml文件相結合,形成帶數據的XML流;產生Web Page能夠調用的Xml流,XML DataSet指定對應表單的Module XML文件,調用帶數據的Xml流,將帶數據的Xml流與Module Xml文件相結合,產生Web Page能夠調用的Xml流;XSlt模板與該Web Page能夠調用的Xml流組合,形成對資料庫的操作功能。
文檔編號G06F17/30GK101847142SQ20091004816
公開日2010年9月29日 申請日期2009年3月25日 優先權日2009年3月25日
發明者劉心宇, 呂旭靜, 李強健 申請人:上海斯年信息技術有限公司