close

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'
}
SpringInitializr

快速启动您的项目

使用 Spring Initializr引导您的应用程序 。

文献资料

每个Spring项目都有自己的项目。它详细说明了如何使用项目功能以及使用它们可以实现的功能。
2.5.1发布 电流 GA 参考文件 API文件
2.4.5.RELEASE GA 参考文件 API文件

可以尝试一些示例: