簡介
Web表現層方面的產品主要技術流派有離散控制項構架、後台衍伸構架、展現中間件構架等數種。離散控制項構架多是一套各個控制項互不相關的JavaScript庫,如bindows,後台衍伸構架多是為專有的後台業務邏輯框架服務,如工作流的表單設計器。展現中間件構架提Wedget Lib(表現層控制項庫)並由展現層引擎統一驅動與管理。控制項使用的個數越多種類越多,越有效用。可對接的業務邏輯層也不限於某種框架,可以廣泛地通過整合接口與各種第三方後台邏輯框架相整合。還可以通過展現層引擎整合基於離散控制項架構的Web表現層產品,進一步增強Web的展現力、操作性與承載量,同時提高開發效率。
定位:
DORADO展現中間件由銳道(BSTEK)研發,是企業級AJAX互動式Web套用的運行平台與開發平台,填補了Java技術體系表現層的架構空白,支持OPOB設計模式,顯著增強Web表現力、操作性與數據承載量,提升用戶體驗,加強開發規範性並提高開發效率,縮短項目工期,增強項目的可管理度。
構成:
DORADO展現中間件由表現層組件、展現引擎、數據集合、集成開發工具與管理控制台等組成,包括AJAX通訊引擎、視圖模型,事件監聽、許可權管理、數據驗證、CSS外觀控制、I18N國際化等。IDE針對不同用戶習慣,提供eclipse plug-in、Studio、NetBeans plug-in三種集成開發工具從供選擇;提供瀏覽器端JavaScript調試工具debugger,進行瀏覽器端運行JavaScript語句、記錄JavaScript運行時間、顯示調試日誌與系統信息等;提供Web Console(Web控制台)進行系統參數配置與性能監控;提供針對用戶體驗時間的性能測試工具TestFrame。
功能:
基於DORADO展現中間件能夠進行完整的Web表現層開發,完成數據、圖表、文書、報表的展現,數據增查改刪;全編輯表格、表格列鎖定、表格按列排序等表現層組件,開箱即用;唯讀、長度等數據校驗,不同樣式皮膚切換的外觀控制,簡體中文/英文/繁體切換等國際化操作,按鈕可見/不可見/可用/灰化、文本框可見/不可見/可輸入/唯讀等許可權控制,以及其他功能。
性能:
DORADO展現中間件性能優異。後台穩定性方面通過1000並發用戶持續並發4小時無錯誤的穩定性耐久壓力測試,後台峰值負載方面通過1500嚴格並發用戶集合併發無錯誤的瞬間波峰壓力測試;前台性能方面支持一次性向表格中載入2000條記錄,單一頁面支持裝載300個以上組件;低配置方面對窄帶環境、工作站低處理器低記憶體配置環境進行了最佳化處理,內置大數據量載入算法、複雜界面按需初始化、複雜界面數據初始順序化、懶載入數據載入方式(Lazy Load)、大數據量複雜操作最佳化等表現層性能最佳化算法、機制與開發技巧。經受住全國數據大集中模式下,5700多個分支機構2萬餘名員工,年處理量超過4000萬筆業務的核心業務管理系統的超大型項目的實戰考驗。
擴展:
DORADO展現中間件分層清晰,表現層組件、數據集合、事件監聽、許可權管理、數據驗證、外觀控制、國際化以及開發工具均可以實現擴展,並提供詳細文檔說明。
整合:
DORADO展現中間件封裝適度,接口開放,可以廣泛地與第三方業務邏輯框架、表現層框架以松耦合方式整合。提供對資料庫存儲過程與Spring框架的默認支持。
文檔:
在技術儲備分級的基礎上,提出DORADO展現中間件學習方法論與學習樹,編撰手冊類、教程類、認證類、場景類等技術資料,並打包為《DORADO展現中間件學習DVD》進行免費派送。結合基於網際網路的技術社區,保障開發者在沒有任何原廠商現場技術服務(如產品培訓)的情況下,能夠通過自學以及社區互動掌握並不斷深化DORADO技術。
服務:
DORADO展現中間件的服務包括官方網站的試用版產品與技術資料下載,5*8與7*24的電話支持服務,電子郵件服務、即時通訊服務、產品培訓、現場疑難解答、按人月的項目現場開發服務、新功能定製研發服務、原始碼講解研發服務等。
開源:
隨著DORADO展現中間件使用範圍日益廣泛,產品原始碼也日益開放。目前所有JavaScript原始碼已去除混淆。BSTEK將基礎軟體業務板塊的合作劃分為五個能級,從第四個能級起,基礎軟體產品的原始碼向核心客戶開放。
下面讓我們來看一下屬於展現中間件構架的dorado產品的組成部分吧!
圖表 1dorado產品構成圖
如圖,dorado主要包含5個組成部分:
富瀏覽器客戶端:基於標準瀏覽器技術,增強web界面的信息承載量、表現力與操作性。其中包含了套用客戶端常用表格、樹、表單、多頁標籤等一整套界面組件
展現引擎
支持AJAX特性,用於增強dorado客戶端的互動能力。
MVC開發框架:包括
數據持久層的實現、頁面流控制、展現層角色機制、國際化資源管理、配置管理與監控控制台等。既可自成體系,又可與各種開發模式與框架相結合。
集成開發工具:dorado專用的IDE,可進一步提升開發速度。
套用框架
又稱marmot,用於為基於Struts、WebWork、Spring、Hibernate、iBatis等開源框架的開發模式提供與Dorado集成的範例性的實現代碼。其中包含了套用主框架、完整許可權的框架、用戶Profile管理、即時訊息等實用功能的實現代碼。
由此可見,dorado的產品本身包含的內容還是比較豐富的,在以上各組成部分中“富瀏覽器客戶端”和“展現引擎”是dorado的核心功能。“集成開發工具”一般而言也是在開發過程中一定會用到的。而剩下的“MVC開發框架”和“套用框架”是否會用到,以及dorado在整個套用開發的體系中所扮演的角色則完全取決於我們對dorado的使用方式。
模式
一般而言,基於dorado的開發主要有以下兩種模式:
模式A: 以dorado提供的DBDataset和DBStatement作為主要的資料庫訪問方式的開發模式。
DBDataset有兩個重要的
派生類AutoSqlDataset和SqlDataset。AutoSqlDataset和SqlDataset都是以直接的JDBC調用來完成資料庫訪問的,不同的是使用AutoSqlDataset時,開發人員需要指定的是查詢方式的描述信息,由AutoSqlDataset來生成最終的SQL;而使用SqlDataset時,開發人員需要直接指定要執行的SQL命令。而DBStatement則可以看作是JDBC中PreparedStatement的增強。
此種開發方式相對比較簡單,其邏輯架構大致如下圖表 2基於dorado的開發模式A
可見,在此種開發模式中對資料庫的方式都是通過dorado提供的功能完成的,而開發人員編寫的
商業邏輯代碼往往也是基於dorado的API的,即與dorado緊密耦合的。在這種開發模式中,dorado的作用基本是整體套用的框架,套用的業務邏輯完全附著dorado的體系中運行。其快速開發的概念表現為對整個套用的快速搭建。
這種開發模式的好處在於簡單。其簡單的含義可以體現在一下4個方面:
易於掌握,上手簡單。
開發過程對開發者的技術要求較低。
節省開發階段前期為套用搭建框架的工作量。
開發階段中編碼量低。
筆者認為:模式A對於中小型項目而言是非常適用。不過對於大型項目而言,它也存在著一定的局限性。這裡所說的局限性往往並不是來自於系統功能的複雜度,而是來自於與項目開發過程的管理要求和今後的擴展需求。至於為什麼會產生局限性的話題已經超出了本書的範圍,您可以嘗試了解一下為什麼會有許多人使用Spring、Hibernate、Struts、iBatis這樣的開源框架。
模式B:使用以獨立封裝的
業務邏輯層結合dorado表現層的開發模式。
圖表 3基於dorado的開發模式B
在這種開發模式中,開發者往往會用到Spring、Hibernate、iBatis這樣的開源框架,利用這些框架來搭建出獨立封裝的業務邏輯層。這類開發模式在引入dorado之前就已經具備了MVC架構模式的特徵,而dorado是作為對原有模式中視圖層(即V)的強有力補充而引入的。在這種開發模式中,dorado的作用主要是作用於表現層的開發框架,其快速開發的概念也更多的體現在對套用
互動界面的快速定製。(註:如果在此模式中引入了Marmot套用框架,那么dorado產品將同樣可以起到快速搭建整個套用的作用)。
與模式A不同,DBDataset在此已沒有什麼價值,替代它的是dorado中的MarmotDataset、CustomDataset等,這些Dataset的共同特點是可以方便的與來自
業務邏輯層的POJO型數據進行雙向的互動。
dorado的以上兩種開發模式並沒有絕對的孰優孰劣。究竟應該在項目使用哪種方式,這很大程度上取決於您的智慧和判斷。一般而言,如果您的項目中沒有特別的需要或者您沒有什麼特別的技術嗜好,建議您首先考慮使用模式A。