zoukankan      html  css  js  c++  java
  • 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) 视图状态会暂停流程并邀请用户参与流程

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

  • 相关阅读:
    网站SEO优化问答精选
    用eclipse怎样将本地的项目打成jar包上传到maven仓库
    查询linux机器的公网ip
    Srping mvc mabatis 报错 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):
    使用SecureCRT的SFTP在WINDOWS与LINUX之间传输文件(转载)
    苹果手机如何减少后台流量
    《图解CSS3——第4章 CSS3背景-2》
    《图解CSS3——第4章 CSS3背景-1》
    《图解CSS3——第3章 CSS3边框-4》
    《图解CSS3——第3章 CSS3边框-3》
  • 原文地址:https://www.cnblogs.com/zhaopengcheng/p/7059594.html
Copyright © 2011-2022 走看看