当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:12:00  来源:本站整理

Spring Web Flow 2.0入门 - 什么情形下可以操纵Spring Web Flow[Java编程]

赞助商链接



  本文“Spring Web Flow 2.0入门 - 什么情形下可以操纵Spring Web Flow[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

前面讲了,Spring Web Flow 供应了描写业务流程的抽象本领,但对一种 Web 开辟技术而言,唯一这些是不够的.同时,Spring Web Flow 是不是可以代替其他 Web MVC 技术?大概在任何情形下都应优先利用 Spring Web Flow ?要答复这些问题,先来看一下 Spring Web Flow 所着力办理的技术问题.

Web 利用程序的三种范围

Java Servlet 标准为 Web 利用程序顶用到的各种对象规定了三种范围( scope ),辨别是 request 范围、 session 范围和 application 范围.

request 范围中的对象是跟客户的恳求绑定在一同的,每次恳求完毕城市销毁对象,而新的恳求过来时又会重新成立对象. request 范围合适存放数据量较大的暂时数据.

session 范围中的对象是跟会话( session )绑定在一同的,每次会话完毕会销毁这些对象,而新的会话中又会重新成立. HTTP 协议本身是无状况的,服务器和客户端要实现会话的管理,只能借助于一些帮助的手段,如在协议的数据包中加一些躲藏的暗号,等等. session 范围合适存放本次会话需求保存的数据.

application 范围的对象是跟利用程序本身绑定在一同,从 Servlet API 的角度来说,就是存放在 ServletContext 中的对象,它们随着 Servlet 的启动而成立,Servlet 关闭时才会销毁. application 范围合适存放那些与利用程序全局相关的数据.

实际开辟中最令人头痛的莫过于 session 范围,Java Servlet 标准指明可在 web.xml 中按以下方法配置 session 的有效时间为100分钟:

清单 2 web.xml 中 session 的配置

<session-config>
<session-timeout>100</session-timeout>
</session-config>

但是,实际中的 session 范围更像是“鸡肋”,把大量数据放入 session 会招致严重的效率问题,在分布式的环境中处理 session 范围更是一不当心就会出错,但丢弃 session 又会给开辟带来很多不便. request 范围虽说能存放量大的数据,但有效范围有限.摆在开辟者眼前的很多用例都要求一种比 request 范围要长,但又比 session 范围要短的这么一种有效范围.

Spring Web Flow 的办理筹划

针对 Java Servlet 标准中的这个缺陷,Spring Web Flow 2.0 中供应了以下两种范围:

flow 范围.此范围内的对象在 flow 开始时成立,flow 完毕时销毁,在 flow 定义文件中可通过“ flowScope ”变量名来拜候.

conversation 范围.此范围内的对象与 flow 范围对象基本类似,唯一差别在于 conversation 范围内的对象所在的 flow 假如调用了其他 subflow ,那么在 subflow 中也可拜候该对象.

备注:subflow 定义:被其他 flow 所调用的 flow 便可称为 subflow.

由于 flow 是由开辟人员自己定义的,可按照业务的需求安闲改变,flow 范围和 conversation 范围的利用也就冲破了 Java Servlet 标准中 session 范围和 request 范围的范围,真正做到了安闲定制.


  以上是“Spring Web Flow 2.0入门 - 什么情形下可以操纵Spring Web Flow[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 在Ubuntu管理iPhone/iPod SpringBoard图标
  • Visual C++ sprintf()函数用法
  • 发扬EJB、Spring思惟将组件化举行到底
  • spring在MVC层办理JPA的缓迟加载问题
  • 用spring简单实现发送邮件
  • 用Spring framework实现按时器功效
  • 关于Struts和Spring两种MVC框架的比较
  • Spring自动装配的学习
  • Spring事件配置的五种办法
  • Spring编程入门十大问题解答
  • Hibernate+Spring+Struts扩大Struts
  • J2EE新手入门之"Spring"名词注释
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .