使用Spring Web Flow-程序流程定义
来源:互联网 发布:淘宝网秋冬男式上衣 编辑:程序博客网 时间:2024/05/29 09:12
陈科肇-http://blog.csdn.net/u013474104/article/details/44541021
=========
1.简介
a.Spring Web Flow是一个web框架,它适用于元素按规定流程运行的程序,如和我们熟知的Sturts一样,但Struts没能将流程的定义与实现流程行为的类和视图分离开来;
b.Spring Web Flow是Spring MVC的扩展,它支持开发基于流程的应用程序。它将流程的定义与实现流程行为的类和视图分离开来;
c.Spring Web Flow是Spring框架的子项目,但不是Spring框架的一部分;
2.安装Spring Web Flow
基于简介c点的介绍,因此我们需要安装Spring Web Flow。
在maven项目的pom.xml配置文件中添加jar包依赖,如下:
<dependency><groupId>org.springframework.webflow</groupId><artifactId>spring-webflow</artifactId><version>2.2.1.RELEASE</version></dependency>关联下载下来有好多jar文件,但我们只需要binding和webflow这两个jar文件,其它的是Spring Web Flow与JSF和JavaScript相协作时所用到的。
3.在Spring中使用Web Flow
Spring Web Flow是构建于Spring MVC基础之上的,这就意味着所有的流程请求都要首先经过Spring MVC的DispatcherServlet。因此我们要在Spring应用上下文中配置一些Bean来处理流程请求并执行流程。
配置Spring Web Flow:
步骤:a.执行器,b.注册表,c.处理请求(请求和响应)
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xmlns:flow="http://www.springframework.org/schema/webflow-config"xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/webflow-config http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.0.xsd"><!-- Spring Web Flow +++++++++++++++++++++++++++begin --> <!-- 1. 织入流程执行器:流程执行器驱动流程的执行(当用户进入一个流程时,流程执行器会为用户创建并启动一个流程执行实例。当流程暂停的时候(如为用户展示视图时),流程执行器会在用户执行操作后恢复流程)。 虽然流程执行器负责创建和执行流程,并不负责加载流程定义,这个责任落在了流程注册表(flow registry)中 --> <flow:flow-executor id="flowExecutor" flow-registry="flowRegistry"/> <!-- 2. 配置流程注册表:加载定义的流程,让执行器能够使用它们 定义的流程:base-path+value=/WEB-INF/flows/*-flow.xml 流程的ID是如何计算的:/[WEB-INF/flows](流程注册表基本路径)/[wwo](流程ID)/[wwo-flow.xml](流程定义文件) 显示声明流程定义文件(ID、URL):<flow:flow-location id="login" path="/WEB-INF/flows/*-flow.xml"/>,去除<flow:flow-registry>的base-path属性 --> <flow:flow-registry id="flowRegistry" base-path="/WEB-INF/flows"> <flow:flow-location-pattern value="*-flow.xml"/> </flow:flow-registry> <!-- 3. 处理流程请求(请求定向指定):使用Spring MVC处理时,我们是通常通过DispatcherServlet将请求分发给控制器。但对于 流程而言,我们需要FlowHandlerMapping来帮助DispatcherServlet将流程请求发送给Spring Web Flow。 --> <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping"> <property name="flowRegistry" ref="flowRegistry"/> </bean> <!-- 4. 响应请求(相当于Spring MVC的控制器): --> <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerAdapter"> <property name="flowExecutor" ref="flowExecutor"/> </bean> <!-- Spring Web Flow +++++++++++++++++++++++++++end --></beans>4.流程的组件
在Spring Web Flow中,流程主要由3个元素定义的:状态、转移和流程数据。
状态:是业务逻辑执行、做出决策或将页面展现给用户;
转移:从一个状态转移到另一个状态;
流程数据:在流程处理中,收集的一些数据(流程的当前状况)。
a.状态
b.转移
c.流程数据
5.开始定义流程
暂时用不上,先不写了!
待续....
1 0
- 使用Spring Web Flow-程序流程定义
- 为什么要使用Spring Web Flow?
- 第八章 使用Spring Web Flow
- Spring Web Flow 2.0入门 - 什么情况下可以使用Spring Web Flow?
- Spring Web Flow
- Spring Web Flow
- spring web flow
- Spring web flow 配置文件
- spring web flow 随记
- Spring学习 WEB FLOW
- Spring Web Flow
- Spring Web Flow实例教程
- spring web flow起步
- Spring Web Flow
- Spring Web Flow
- 《Spring Web Flow 实践》
- Spring Web Flow 简介
- 《Spring实战》学习笔记-第八章:使用Spring Web Flow
- 分布式系统的一些原则的本质
- Struts2原理及源码分析
- File类
- 第二周 项目一-旱冰场造价
- hdoj 4500 小Q系列故事——屌丝的逆袭
- 使用Spring Web Flow-程序流程定义
- HTML5新特性之智能表单: required="required"指示输入字段的值是必需的
- Object-C内存管理
- typedef的用法总结
- LeetCode #3 Longest Substring Without Repeating Characters
- UVA - 11995 I Can Guess the Data Structure! STL模板
- UVA12304直线,圆,点的综合应用
- 学习和使用多种编程语言的感想
- 函数参数的传递问题(一级指针和二级指针)