spring in action 8.1 使用Spring web flow
一、说明
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的更多相关文章
- spring in action 5.1 小结 spring mvc起步
0 配置 DispatcherServlet 是 spring mvc的核心,常规配置方法可以查看之前博客.springMVC简单例子 在此使用servlet 3 规范和 spring3.1 功能增强 ...
- 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 ...
- Spring Web Flow 简介
Spring Web Flow 简介 博客分类: 转载 SSH 最近在TSS上看到了一片介绍Spring Web Flow的文章,顺便就翻译了下来,SWF的正式版估计要到6月份才能看到了,目前的例子都 ...
- ssh整合随笔(注解方式,Spring 管理action)
Web.xml<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=" ...
- 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 ...
- SPRING IN ACTION 第4版笔记-第八章Advanced Spring MVC-003-Pizza例子的基本流程
一. 1. 2.pizza-flow.xml <?xml version="1.0" encoding="UTF-8"?> <flow xml ...
- 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 ...
- Spring in action记录
最近一段时间重新学习了一遍SPRING,现在对这些笔记整理一下,一来算是对之前的学习有一个交代,二来当是重新学习一次,三来可以留下备份 这次学习中以SPRING IN ACTION 4这学习资料,整书 ...
- Spring Web Flow
Spring Web Flow是一个Web框架,它适用于元素按规定流程运行的程序.Spring Web Flow是Spring MVC的扩展,它支持开发基于流程的应用程序.它将流程的定义与实现流程行为 ...
随机推荐
- MySQL在windows系统的安装
原文:https://blog.csdn.net/wokaowokaowokao12345/article/details/76736152 MySQL在windows系统的安装 原创 2017年08 ...
- monkey源代码分析之事件注入方法变化
在上一篇文章<Monkey源代码分析之事件注入>中.我们看到了monkey在注入事件的时候用到了<Monkey源代码分析番外篇之Android注入事件的三种方法比較>中的第一种 ...
- 命令方式启动安卓模拟器(M9)
H:\Android\M9SDK_windows_1.0\platforms\android-2.3.1>emulator.exe -sysdir H:\Android\M9SDK_window ...
- 9.线程通信wait、notify
线程之间通信 1.线程是操作系统的独立的个体,但这些个体如果不经过特殊处理就不能成为一个整体. 2.使用wait.notify,方法实现线程通信(2个方法都是需要object方法) 3.wait(释放 ...
- iOS:面向对象的思想使用sqlite数据库
SQLite支持的常见数据类型如下所示. –INTEGER 有符号的整数类型 –REAL 浮点类型 –TEXT 字符串类型,采用UTF-8和UTF-16字符编码 –BLOB 二进制大对象类型,能够存放 ...
- GSM模块_STM32实现GPRS与服务器数据传输经验总结
硬件环境 MCU:STM32F103RET6 (调试器:J-Link) GSM模块:Ai-Thinker_A6 (安信可)(还需要配一个串口打印工具,当初选这个模块纯粹是因为价格是最便宜的) ---- ...
- metal2的四个新features
https://developer.apple.com/documentation/metal/mtldevice/ios_and_tvos_devices/about_gpu_family_4 Im ...
- 如何更换Office 2013的product key?
第一步 第二步 第三步 ... ... ... ... ^_^ 参考资料 ======================== Change Product Key Office 2013 Home ...
- iis服务器站点配置
iis网站正常移动到一个新的服务器上 需要配置如下: 启用父路径 不启用父路径会报服务器500错误
- [ES6] 04. The let keyword -- 2 Fiald case
Fiald case 1: let can work in it's block { let a = 10; var b = 1; } a // ReferenceError: a is not de ...