一、说明

Spring Web Flow是spring MVC的扩展,它支持基于流程的应用程序,他将流程的定义和实现流程行为的类和视图分离开来。

1.1 spring中配置web flow,目前需要在xml中对其进行配置,首先需要加载名称空间

1.2 装配流程执行器 flow executor

<flow:flow-executor id="flowexecutor">

是驱动流程的执行,当用户进入一个流程时,流程执行器会为用户创建并启动一个流程执行实例,当流程暂停的时候,流程执行器会在用户执行操作后恢复流程。

尽管流程负责创建和执行流程,但它不负责加载流程定义。这个责任落在了注册表身上。

1.3 流程注册表:加载流程定义并让流程执行器能够使用他们。

<flow:flow-registry base-path="/WEB-INF/flows" id="registry">

  <flow:flow-locatio-pattern value="*-flow.xml"/>

</flow:flow-registry >

流程注册表会在"/WEB-INF/flows"目录下查找流程定义。

所有流程都是通过流程ID 进行引用。

上例中的计算方法

/WEB-INF/flows/order/*-flow.xml

其中,order就是流程id。

1.4 流程组件,spring web flow中,流程主要由:状态、转移、流程数据三个元素定义。

状态:流程中事件发生的地点。是业务逻辑执行、做出决策或将页面展现给用户的地方。

状态类型 描述
行为(Action) 行为状态是流程逻辑发生的地方
决策(Decision) 决策状态讲流程分成两个方向,他会基于流程数据的评估结果确定流程的方向
结束(End) 结束状态是流程的最后一站,一旦进入End状态,流程就会终止
子流程(Subflow) 子流程状态会在当前运行的流程上下文中启动一个新的流程状态
视图(View) 视图状态会暂停流程并邀请用户参与流程

转移:就是连接这些点的公路,在流程中,通过转移的方式从一个状态到另一个状态。

spring in action 8.1 使用Spring web flow的更多相关文章

  1. spring in action 5.1 小结 spring mvc起步

    0 配置 DispatcherServlet 是 spring mvc的核心,常规配置方法可以查看之前博客.springMVC简单例子 在此使用servlet 3 规范和 spring3.1 功能增强 ...

  2. SPRING IN ACTION 第4版笔记-第九章Securing web applications-001-SpringSecurity简介(DelegatingFilterProxy、AbstractSecurityWebApplicationInitializer、WebSecurityConfigurerAdapter、@EnableWebSecurity、@EnableWebMvcS)

    一.SpringSecurity的模块 At the least, you’ll want to include the Core and Configuration modules in your ...

  3. Spring Web Flow 简介

    Spring Web Flow 简介 博客分类: 转载 SSH 最近在TSS上看到了一片介绍Spring Web Flow的文章,顺便就翻译了下来,SWF的正式版估计要到6月份才能看到了,目前的例子都 ...

  4. ssh整合随笔(注解方式,Spring 管理action)

    Web.xml<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=" ...

  5. SPRING IN ACTION 第4版笔记-第八章Advanced Spring MVC-004-Pizza例子的用户流程(flowExecutionKey、_eventId_phoneEntered、flowExecutionUrl )

    一. 1. 2. 3.customer-flow.xml 自己定义customer,最后output <?xml version="1.0" encoding="U ...

  6. SPRING IN ACTION 第4版笔记-第八章Advanced Spring MVC-003-Pizza例子的基本流程

    一. 1. 2.pizza-flow.xml <?xml version="1.0" encoding="UTF-8"?> <flow xml ...

  7. SPRING IN ACTION 第4版笔记-第八章Advanced Spring MVC-002-SpringFlow的组件(state\<transition>\<var>\<set>\<evaluate>)

    一. In Spring Web Flow, a flow is defined by three primary elements: states, transitions,and flow dat ...

  8. Spring in action记录

    最近一段时间重新学习了一遍SPRING,现在对这些笔记整理一下,一来算是对之前的学习有一个交代,二来当是重新学习一次,三来可以留下备份 这次学习中以SPRING IN ACTION 4这学习资料,整书 ...

  9. Spring Web Flow

    Spring Web Flow是一个Web框架,它适用于元素按规定流程运行的程序.Spring Web Flow是Spring MVC的扩展,它支持开发基于流程的应用程序.它将流程的定义与实现流程行为 ...

随机推荐

  1. Centos7 内核从3.10升级到4.12过程

    http://blog.csdn.net/youshijifen/article/details/73472434

  2. SQL Server 的事务和锁 图解

    http://www.cnblogs.com/lxconan/archive/2011/10/20/2218396.html

  3. Appium+python自动化13-native和webview切换

    前言 现在大部分app都是混合式的native+webview,对应native上的元素通过uiautomatorviewer很容易定位到,webview上的元素就无法识别了. 一.识别webview ...

  4. dell 1464 升级固态硬盘ssd 记录

    2010年买的Dell 1464(i5 M430)用了4年多,感觉这款机器各方面性能还不错,决定给它升升级.目前笔记本最大的瓶颈应该出在机械硬盘的速度上,于是撑着双十一促销之际买了一块PLEXTOR/ ...

  5. [Android Studio] Android Studio底边栏选项不见了,如何调出来

    转载:http://blog.csdn.net/hyr83960944/article/details/38067785 Android Studio底边有一个选项栏,包含了Run,Android等等 ...

  6. Linux下SVN的三种备份方式

    原文链接:http://blog.csdn.net/windone0109/article/details/4040772 (本文例子基于FreeBSD/Linux实现,windows环境请自己做出相 ...

  7. Shell编程(脚本)的经常使用命令和语句

    一些经常使用的Shell编程(脚本)命令和语句,能够满足一般需求. 接收到的命令參数: 參数个数: $# 參数值: 命令本身:$0 第一个參数:$1 第二个參数:$2 -- 退出命令: exit ec ...

  8. 这篇讲PHP的讲的有些道理 & mb_substr & 中文处理

    http://chengxu.org/p/239.html Python 是否是下一个 PHP? 1. PHP胜在最要命的部署上:没有任何其他语言有像 PHP 一样适合大规模部署的方式.基本上装好 A ...

  9. 测试markdown 博客功能

    欢迎使用 Cmd - 在线 Markdown 编辑阅读器 我们理解您需要更便捷更高效的工具记录思想,整理笔记.知识,并将其中承载的价值传播给他人,Cmd Markdown 是我们给出的答案 -- 我们 ...

  10. javascript常用技巧归纳

    最近归纳了下,发现还很多的哦1 javascript捕捉方向键  <HTML><HEAD><title>反选</title><script lan ...