spring webflow

简介:

最近看了一段时间的spring-webflow,说一下自己的见解吧。

首先说一下关于spring-webflow的技术文档太少了,网上就只有一个入门篇,讲的比较笼统,但还是推荐一下,

Spring Web Flow 2.0 入门,又看了下英文文档,先说下心得

1.<view-state id="viewCart" view="viewCart">

 

<on-render>

<evaluate expression="productService.getProducts()" result="viewScope.products"/>

on-render>

<transition on="submit" to="viewOrder">

transition>

<transition on="addToCart" to="addProductToCart"/>

view-state>

on-render 必须在transition之前

2.进入flow后,它会选择上下顺序中第一个view-state来展示

3. requestParameters.id" type="long" />

如果像下面那样不指定scope,则框架会从request, flash, view, flow, and conversation scope依次搜索booking

       

4.

可以通过url来获取参数。使用http://lo…/index?registerId=3,即可获取,

     

         

    

直接使用

表 2 Spring Web Flow 自定义的切入点

5.

切入点名称      XML 元素名称      触发时刻

flow start      on-start      flow 执行之前

state entry      on-entry      进入某个 state 之后,做其他事情之前

view render      on-render      在进入 view 的 render 流程之后,在 view 真正 render出来之前

state exit      on-exit      在退出 state 之前

flow end      on-end      flow 执行结束之后

6.在web flow中数据必须和一个scope绑定,有

名称          创建          销毁

flowScope     当flow开始     当flow销毁

viewScope     当进入view-state     当离开view-state

requestScope     当flow被调用     当flow返回数据

flashScope     flow开始     flow结束

conversationScope     最顶端的flow开始     最顶端的flow结束(用于flow的调用subflow)

 

7.requestParameters     可以得到request中的数据, requestParameters.id" type="long" />

 

 

感觉webflow其实就是spring mvc的一个变种,它能做的事,其它mvc也能做(其实是废话,什么样的web框架都可以用纯servlet来替代,就看麻不麻烦了);它用xml配置来代替了controller,并形成了一套按照步骤执行的web流。不同于工作流的是,工作流通常是多人协作的,而webflow一般则是单请求的流程。

它的好处显而易见,就是对一个复杂的业务逻辑能有一个流程化的处理,使其的运行变得更清晰,同时能够有效的设计第一个数据的存活时间。

在小的应用中,它就有些过于华丽了和复杂了。它的配置确实有些麻烦,并且每个web流一般都要有一个xml文件一做配置,这些不容易管理这些配置文件。好像现在不支持annotation吧,只能用xml(话说又没有action类,annotation也没地方加啊)。

本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/7172343.html,如需转载请自行联系原作者
相关文章
|
Java Shell Python
猥琐思路复现Spring WebFlow远程代码执行
本文讲的是猥琐思路复现Spring WebFlow远程代码执行,说明:做安全的,思路不猥琐是日不下站的,必须变的猥琐起来,各种思路就会在你脑海中迸发。
1284 0
|
2月前
|
Java 应用服务中间件 Maven
SpringBoot 项目瘦身指南
SpringBoot 项目瘦身指南
55 0
|
3月前
|
缓存 Java Maven
Spring Boot自动配置原理
Spring Boot自动配置原理
52 0
|
2月前
|
缓存 安全 Java
Spring Boot 面试题及答案整理,最新面试题
Spring Boot 面试题及答案整理,最新面试题
138 0
|
1月前
|
存储 JSON Java
SpringBoot集成AOP实现每个接口请求参数和返回参数并记录每个接口请求时间
SpringBoot集成AOP实现每个接口请求参数和返回参数并记录每个接口请求时间
46 2
|
2月前
|
前端开发 搜索推荐 Java
【Spring底层原理高级进阶】基于Spring Boot和Spring WebFlux的实时推荐系统的核心:响应式编程与 WebFlux 的颠覆性变革
【Spring底层原理高级进阶】基于Spring Boot和Spring WebFlux的实时推荐系统的核心:响应式编程与 WebFlux 的颠覆性变革
|
1月前
|
前端开发 Java 应用服务中间件
Springboot对MVC、tomcat扩展配置
Springboot对MVC、tomcat扩展配置
|
20天前
|
Java Nacos 开发者
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例