程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> Struts 和 Tiles 輔助基於組件的開發(5)

Struts 和 Tiles 輔助基於組件的開發(5)

編輯:JAVA編程入門知識
  Struts 和 Tiles 輔助基於組件的開發(5)
  

Struts 和 Tiles 更復雜的使用
  
   篇幅所限,不答應我再深入討論 Struts 和 Tiles 包其它一些實用的方面,但我真的想簡要地談一下,這樣您可以對 Struts 和 Tiles 可以做些什麼有所了解。假如有足夠的需求,可能這些內容會是將來文章的主題。

您會在本文的兩個示例中注重到,我編碼了名、姓、喜歡的顏色和出生日期等基本驗證。我所采用的這類簡單驗證實際上可由 Struts 通過使用它的格式驗證來執行,這樣節省了花在編碼 Java 語句的時間。例如,檢查是否是空字符串、檢查字符串是否與日期相匹配或檢查是否與其它某些正則表達式匹配等,這都是可行的。您會發現將格式驗證用作第一級檢查會是十分方便的,在檢查是否符合更復雜的業務邏輯規則之前,程序可用第一級檢查來消除一些明顯錯誤。Struts 提供了一個驗證器包,可以通過 WEB-INF 目錄中的 validator.XML 描述符來配置該包。在這兩個示例中我沒有包含該驗證器包;假如您想試一下,它包含在 Struts 1.1-b1 包中。

Struts 和 Tiles 包的另一個有用特性是與容器治理的安全性相集成。很多人都在使用諸如 IBM WebSphere 或 JBoss 之類的應用程序服務器。這些服務器通過處理安全性中所涉及的許多日常任務使認證和授權更便捷,讓您擺脫必須對它們進行的編碼。Struts 答應您根據用戶角色有條件地向不同用戶顯示 bean 數據的不同位,這可以通過自動查詢容器來決定。同樣地,Tiles 框架答應您根據用戶角色有條件地向不同用戶顯示不同的視圖組件,這也是通過自動查詢容器來決定的。我在自己的應用程序中使用這些特性向治理員、常規用戶或 guest 用戶顯示不同的菜單。

最後要說明,我在示例中沒有談到國際化,但對於那些構建將來最終要以多種語言發布的大型應用程序的人來說,這實際是一個重要方面。Struts 讓您創建消息資源特性文件,這些文件指定標簽、標題和其它輸出的文本。假如您用幾種不同語言的輸出填入消息資源特性文件的話,只要簡單更改語言設置就能將所有窗口構件和硬編碼的文本更改成適當語言,甚至在應用程序運行中也可以更改。

未來的方向
  
   Struts 和 Tiles 將走向何方呢?剛出現的兩個更改必定會使 Struts 和 Tiles 更加有用。第一個更改是工作流治理系統。您很可能處理過許多多步驟的業務過程;目前,在 Web 應用程序中對它們進行編碼可以是一個主要的麻煩,因為您必須協調不同的步驟,而每一步驟都是 Java 類中的一個單獨方法或是一個單獨的 servlet 或 jsp 頁面。商業市場中的工具通過使開發人員能對多步驟的業務過程進行建模,然後自動生成 Java 代碼作為進一步開發的基礎,來幫助治理這些過程。Struts 工作流治理系統將提供類似的功能,使開發人員能夠編寫業務過程的腳本,這些過程在 Web 應用程序中跨多個頁面,並指定這些頁面如何通過核心的基於規則的系統進行交互。

另一個同樣有望即將出現的更改是將 Struts 標記合並到 JSP 標准標記庫(JSP Standard Tag Library)中,這個庫是 Jakarta 項目,它試圖產生一個有用的定制標記集合,從而簡化並加快用 JSP 頁面編寫 Web 應用程序的開發。其中的意義在於:Web 應用程序的開發將比過去任何時候都更輕易,因為您可以通過使用定制標記的標准機制得到一個在此基礎上做進一步開發的預先編寫好的代碼庫。而且,JSP STL 標准中這個項目的合並甚至確保了 Struts 和 Tiles 功能更為廣泛的分發和可用,這意味具有這種技能的開發人員在眾多項目中大有作為,而且公司更加輕易獲得開發 Web 應用程序的熟練人才。

您能從本文中獲得什麼?
   在閱讀了本文後,您應該記住以下要點:

  • MVC 是開發健壯的 Web 軟件的優秀體系結構。 面向頁面的體系結構是簡單的,但隨著應用程序在規模和使用范圍方面的增長會逐漸失去作用。MVC 是一種經證實適合於較大型應用程序的模型。
      
  • Struts 和 Tiles 為復雜應用程序提供一個堅實的基礎。 Struts 和 Tiles 符合 MVC 范例,並答應開發人員創建隨業務需要在治理狀態下增長的應用程序。
      
  • Struts 和 Tiles 受到強大的業界支持,並在開發人員中有逐漸流行和具有推動力。 這確保了其被廣泛采用,並保護了開發人員和公司投入的時間和金錢。

有了 Struts 和 Tiles,您會發現現在創立您自己的 Web 應用程序更加輕易了。

參考資料

  • 您可以參閱本文在 developerWorks 全球站點上的 英文原文 .
關於作者

Wellie Chao 是 Caravel Technologies 的總裁兼首席技術專家,Caravel Technologies 是一家為各種規模的企業提供技術策略、設計和實現服務的電子商務和技術咨詢公司。他多年來一直活躍於技術領域中,自 1984 年以來,他一直涉足軟件和硬件的研發,而且從 1994 年開始,他用各種語言在不同平台上編寫基於 Web 的軟件。他創建並掌管著三家軟件技術公司;在招募有才能的職員和治理人員,籌集風險資金及處理與供給商、客戶和業務伙伴之間的業務往來方面擁有直接和豐富的經驗。他還設計並實現了一個大規模的基於 Web 的企業軟件系統。
  
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved