jsp模型为web程序提供了page/request/session/application这四个基础性的变量域.
这种变量域的划分很大程度上是纯技术性的, 与我们的业务应用中需要的scope支持相去甚远. 当我们把业务对象的生命周期映射到这些变量域的时候,
经常出现不适应的情况. 例如我们可能被迫选择把与某项业务相关的所有数据放置在session中并在各处硬编码一些资源清理代码.
为了实现与愈来愈复杂的应用开发的契合, 我们需要能够在程序中定义与应用相关的变量域并实现对这些变量域的管理,
即我们需要一种自定义scope的支持而不是使用几个固定的scope.
JBoss的Seam项目
http://www.jboss.com/products/seam 中引入了一种所谓declarative application state management的机制
http://blog.hibernate.org/cgi-bin/blosxom.cgi/Gavin%20King/components.html,
其中的关键是增加了business process和conversation这两个应用直接相关的scope, 它们都是可以根据需要自由创建的.
business process context使用jBPM支持long running的状态保持. 而conversation
context是对session使用的一种精细化, 与beehive项目中的page flow所需的scope支持非常类似
http://beehive.apache.org/docs/1.0m1/pageflow/pageflow_overview.html. 但目前seam中的scope支持仍是非常原始的, 不支持嵌套的context, 这意味着对于复杂应用尚无控制和管理能力.
分享到:
相关推荐
Maven 中的 Scope 详细说明 Maven 中的 Scope 是一种依赖范围控制机制...Maven 中的 Scope 机制可以帮助开发者更好地管理依赖关系,避免不必要的依赖项被包含在应用程序中,并且可以提高应用程序的灵活性和可维护性。
Java Web程序设计题库主要涵盖了Java Web开发的基础知识,包括静态和动态网页的后缀、JSP指令、数据类型、运算符、访问修饰符、常量修饰、Servlet生命周期、HTTP响应格式、会话管理、请求处理、JSP内置对象、...
在进行Web应用程序开发时,完成项目的最后一步往往是部署到生产环境中。对于使用C#语言和Visual Studio 2005开发的应用程序而言,制作一个方便快捷的安装程序至关重要。本篇文章将详细介绍如何利用Visual Studio ...
"微信小程序WebDemo"是一个示例项目,旨在帮助开发者理解和学习如何使用JavaScript进行微信小程序的开发。下面将详细阐述相关知识点。 1. 微信小程序框架: 微信小程序采用自有的WXML(WeiXin Markup Language)和...
总结来说,Java Web程序设计中的EL隐式对象极大地简化了开发者的工作,使他们能够更高效地处理Web应用程序中的数据。从请求参数到会话管理,再到Cookie操作,EL隐式对象提供了一套完整的工具集,帮助开发者构建功能...
这种作用域非常适合处理Web应用程序中的临时数据。 为了启用Request作用域,需要在Web应用的配置文件中添加`RequestContextListener`监听器。以下是配置示例: ```xml <web-app> <listener-class>org.spring...
在Web应用中,ActionForm的scope主要有两种:Request Scope和Session Scope。当ActionForm的scope设置为Session时,这意味着同一个用户的不同请求会共享同一个ActionForm实例。这种配置在处理需要跨多个HTTP请求保持...
在Java Web程序设计中,JSP(JavaServer Pages)是一种动态网页技术,它允许开发者在HTML代码中嵌入Java代码,以实现动态内容的生成。本课程主要关注的是JSP中的一个重要特性——隐式对象。这些隐式对象是由JSP容器...
Java Web程序设计主要涉及Web应用程序的开发,包括JSP(JavaServer Pages)、Servlet、JavaBean等技术。以下是基于给定的部分内容所涵盖的一些关键知识点: 1. 静态网页与动态网页的区别: - 静态网页通常以`....
Java Web是计算机科学领域中一个重要的分支,主要涉及使用Java技术进行Web应用程序的开发。这份考试复习资料专注于Java Web的应用开发,旨在帮助学生理解和掌握关键概念。以下是一些核心知识点的详细说明: 1. **...
总结来说,`Request`和`Session`作用域是Spring Web应用程序中管理Bean生命周期的关键工具。`RequestScope`确保每个HTTP请求都有一个独立的Bean实例,而`SessionScope`则保证在同一个会话期间使用同一个Bean实例,...
Owin是.NET平台下的一套标准接口,用于构建自托管、可扩展的Web应用程序。它提供了一种标准化的方式来处理HTTP请求和响应,包括身份验证和授权。 **基于Owin的WebAPI身份认证** 1. **安装Owin中间件**:在ASP.NET ...
在Java Web开发中,SSM(Spring、Spring MVC和MyBatis)是一个常用的技术栈,它提供了强大的服务层、控制层和数据访问层支持。而JFreeChart则是一个功能丰富的图表库,能够生成各种类型的图表,包括柱状图、折线图和...
- **应用范围**(Application Scope):也称为全局作用域,它在整个Web应用程序中都是可见的,从Web应用启动到关闭,所有用户都可以访问。应用范围的对象在web.xml文件中初始化,或通过ServletContext对象创建。 -...
当父Scope和子Scope中都有同名属性,但一个是原始类型(如字符串、数字、布尔值等),那么在子Scope中对这个属性的修改不会影响父Scope的值,因为原始类型是按值传递的。例如: ```html ...
在本文中,我们将深入探讨如何使用JBuilder 2005这一强大的集成开发环境来构建Web应用程序,特别是在Tomcat服务器上实现数据库连接池Database Connection Pool (DBCP) 的过程。JBuilder是一个支持多种Java开发工具的...
描述中的“Java Web代码”意味着我们可能会涉及到创建和部署在Tomcat上的各种Java Web组件,如Servlet、JSP、Filter和Listener等。这些组件是Java Web应用程序的核心组成部分,用于处理HTTP请求、呈现动态内容、管理...
prototype 作用域的 bean,每一次请求(将其注入到另一个 bean 中,或者以程序的方式调用容器的 getBean() 方法)都会产生一个新的 bean 实例,相当于一个 new 的操作。spring 不能对一个 prototype bean 的整个生命...
《WebBeans 入门手册》是针对JavaEE6中Contexts and Dependency Injection (CDI)规范的详尽指南。CDI是Java企业级应用程序中的一个关键组件,它提供了一种统一的方式来管理对象(称为bean)以及它们之间的依赖关系。...