Spring Web Flow

官方地址:https://spring.io/projects/spring-webflow

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启动配置

要使用 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'
}
作者:Jeebiz  创建时间:2023-08-12 12:38
最后编辑:Jeebiz  更新时间:2024-07-06 19:00