Spring Web Flow
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 Boot配置
要使用Spring Web Flow,请将以下依赖项添加到您的应用程序中。
玛文
<dependencies>
<dependency>
<groupId>org.springframework.webflow</groupId>
<artifactId>spring-webflow</artifactId>
<version>2.5.1.RELEASE</version>
</dependency>
</dependencies>
摇篮
dependencies {
compile 'org.springframework.webflow:spring-webflow:2.5.1.RELEASE'
}
快速启动您的项目
使用
Spring Initializr引导您的应用程序
。