更進一步
VMware 提供培訓和認證,以加速您的進步。
瞭解更多Spring Web Flow 構建於 Spring MVC 之上,允許實現 Web 應用程式的“流程”。流程封裝了一系列步驟,引導使用者執行某些業務任務。它跨越多個 HTTP 請求,具有狀態,處理事務資料,可重用,並且本質上可能是動態和長時間執行的。
Spring Web Flow 的最佳應用場景是具有受控導航的狀態 Web 應用程式,例如辦理航班登機手續、申請貸款、購物車結賬,甚至向表單新增確認步驟。這些場景的共同點是具有以下一個或多個特徵
有一個明確的起點和終點。
使用者必須按特定順序瀏覽一組螢幕。
更改在最後一步之前不會最終確定。
一旦完成,就不應意外重複交易
Spring Web Flow 提供了一種宣告式流程定義語言,用於在更高的抽象級別上編寫流程。它允許它整合到廣泛的應用程式中,而無需任何更改(到流程程式設計模型),包括 Spring MVC、JSF,甚至 Portlet Web 應用程式。以下是在具有導航要求的狀態 Web 應用程式中觀察到的常見問題
視覺化流程非常困難。
應用程式有大量程式碼訪問 HTTP 會話。
強制執行受控導航非常重要,但不可能。
正確的瀏覽器後退按鈕支援似乎無法實現。
瀏覽器和伺服器在使用“後退”按鈕時失去同步。
多個瀏覽器選項卡導致 HTTP 會話資料的併發問題。
Spring Web Flow 提供瞭解決上述問題的方案。
要使用 Spring Web Flow,請將以下依賴項新增到您的應用程式。
Maven
<dependencies>
<dependency>
<groupId>org.springframework.webflow</groupId>
<artifactId>spring-webflow</artifactId>
<version>2.5.1.RELEASE</version>
</dependency>
</dependencies>
Gradle
dependencies {
compile 'org.springframework.webflow:spring-webflow:2.5.1.RELEASE'
}