Spring Web Flow 1.0

釋出 | Keith Donald | 2006年6月10日 | ...

 

產品負責人
Keith Donald, SpringSource
Erwin Vervaet, Ervacon
 
Spring Web Flow 是下一代 Java Web 應用控制器框架,它允許開發人員將使用者操作建模為可在任何環境中執行的高階模組,稱為流(flows)。該框架提高了生產力和可測試性,同時提供了一個強大的解決方案來強制執行導航規則和管理應用程式狀態。

全景概覽

Spring Web Flow 允許開發人員構建可重用、自包含的控制器模組,稱為流(flows)。流定義了一個使用者對話,它響應使用者事件,驅動應用程式程式碼執行以完成業務目標。請看這個圖形化的流定義檢視,它描述了一個與使用者互動的搜尋過程
Seach Flow 
像上面這樣的流是使用豐富的領域特定語言 (DSL) 宣告式定義的。該語言的 XML (XSD) 形式最受使用者歡迎。定義完成後,流可以獨立測試,可以作為子流嵌入到其他流中,並且可以部署到包括 Java EE Servlet 和 Portlet (JSR 168) 在內的多種環境中執行,無需更改。

產品亮點

Spring Web Flow 包含許多受使用者歡迎的創新功能。其中包括
  • 將應用程式任務的所有控制器邏輯(例如搜尋過程)定義在一個地方,而不是將邏輯分散在許多地方。
  • 將流組合在一起,用簡單的部分建立豐富的控制器模組。
  • 使用自然的、面向物件的線性程式設計模型強制執行嚴格的使用者導航規則,而無需編寫冗長的 if/else 塊。
  • 在流執行期間分配的記憶體可以在執行結束或過期時自動清理。
  • 使用您選擇的基礎 Web 框架,在 Servlet 環境中部署流以供執行。Spring Web Flow 提供了與主流 Web 框架 Struts、Spring MVC 和 Java Server Faces 的便捷整合。
  • 更改 Web 框架(例如從 Struts 更改為 Spring MVC)而無需更改流定義。
  • 完全更改環境(例如從 JUnit 測試更改為 Portlet)而無需更改流定義。
  • 在開發時即時演進應用程式的導航規則,無需容器重啟。
  • 自動獲得瀏覽器按鈕支援(後退、前進、重新整理),無需自定義編碼。
  • 將任務資料儲存在四種託管作用域中的任何一種:request、flash、flow 和 conversation;每種都有其獨特的語義。
  • 在沒有容器的情況下獨立測試流。在部署之前確保您的應用程式控制邏輯正常工作。
  • 使用 Spring IDE 2.0 圖形化地視覺化和編輯您的流導航邏輯。

入門指南

開始使用 Spring Web Flow 的最佳方法是閱讀 Erwin 的實用介紹並瀏覽示例應用程式。我們建議從一開始就檢視所有示例,並根據需要補充 參考手冊 中的材料。本次釋出版本附帶了十個示例應用程式,每個都展示了一組獨特的功能。這些示例是
  1. Phonebook - 展示大多數功能(包括子流)的原始示例
  2. Sellitem - 展示帶有條件轉換、流執行重定向、自定義文字欄位格式和延續的嚮導
  3. Flowlauncher - 展示啟動和恢復流的所有可能方式
  4. Itemlist - 展示 REST 風格的 URL 和內聯流
  5. Shippingrate - 展示 Spring Web Flow 與 Ajax 技術的結合使用
  6. NumberGuess - 展示有狀態 Bean、evaluate actions 和“單鍵”流執行重定向。
  7. Birthdate - 展示 Struts 整合
  8. Fileupload - 展示 multipart 檔案上傳、set actions 和 flash 作用域
  9. Phonebook-Portlet - Portlet 環境中的 Phonebook 示例(請注意流定義沒有改變)
  10. Sellitem-JSF - JSF 環境中的 Sellitem 示例
  11. Booking-Faces - 一個更全面的 Spring Web Flow + JSF 應用程式。
所有示例專案都是 Spring IDE 專案,可以直接作為“Dynamic Web Projects”匯入 Eclipse,也可以使用 Eclipse Web Tools 在 Eclipse IDE 內部署。
 
有關 Spring Web Flow 完整功能集的深入而全面的介紹,最佳選擇是閱讀 Working with Spring Web Flow

當前版本說明

  • Spring Web Flow 1.0.x 是經過驗證的軟體,適用於生產環境。
  • Spring Web Flow 執行在 Java SE 1.3 或更高版本,以及 Java EE 1.3 (Servlet 2.3, Portlet 1.0) 或更高版本。Spring Web Flow 執行在所有主要應用伺服器平臺上。
  • Spring 1.x 系列需要 Spring 1.2.7 或更高版本,Spring 2.x 系列需要 Spring 2.0 或更高版本。
  • Struts Classic (1.2.9)、Spring MVC 和 JSF 整合是開箱即用的。
  • 1.0 版本標誌著公共 API 和 XSD 的向後相容性將在整個 1.x 系列中得到保留。

即將釋出的版本說明

  • Spring Web Flow 2.0 是框架的下一個主要版本,重點在於增強整合和易用性。
  • Spring Web Flow 2.0 正式版預計於 2008 年 4 月釋出。

社群

  • 加入我們的 論壇,參與關於 Spring Web Flow 使用和架構的熱烈討論。這是參與 Web Flow 社群的最佳方式。

重要資源

獲取 Spring 新聞通訊

訂閱 Spring 新聞通訊,保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助力您加速前進。

瞭解更多

獲得支援

Tanzu Spring 在一個簡單的訂閱中提供對 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案。

瞭解更多

即將到來的活動

檢視 Spring 社群中所有即將到來的活動。

檢視全部