要使用request、session和 global session作用域的bean(即具有web作用域的bean), 在开始设置bean定义之前,还要做少量的初始配置。请注意,假如你只想要“常规的”作用域,(singleton和prototype),就不需要这一额外的设置。
在目前的情况下,根据你的特定servlet环境,有多种方法来完成这一初始设置...
如果你用Spring Web MVC,即用SpringDispatcherServlet或DispatcherPortlet来处理请求,则不需要做特别的配置:DispatcherServlet 和 DispatcherPortlet已经处理了所有有关的状态
当使用了Spring's DispatcherServlet以外的Servlet 2.4及以上的Web容器时(如使用JSF或Struts),你需要在Web应用的'web.xml'文件中增加 javax.servlet.ServletRequestListener 定义
<web-app>
...
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
...
</web-app>
如果你用的是早期版本的web容器(Servlet 2.4以前的版本),那么你要使用一个javax.servlet.Filter的实现。请看下面的web.xml配置片段:
<web-app>
..
<filter>
<filter-name>requestContextFilter</filter-name>
<filter-class>org.springframework.web.filter.RequestContextFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>requestContextFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
...
</web-app>
RequestContextListener和RequestContextFilter两个类做的都是同样的工作: 将HTTP request对象绑定到为该请求提供服务的Thread。 这使得具有request和session作用域的bean能够在后面的调用链中被访问到。
分享到:
相关推荐
浅谈Spring学习之request, session与globalSession作用域 在Spring框架中,request、session和globalSession是三个重要的作用域,分别对应着不同的生命周期和应用场景。在本文中,我们将深入探讨这三个作用域的定义...
- 在portlet环境中,Global Session作用域的Bean在全局portlet会话期间有效,这意味着所有的portlet都可以访问同一个实例。然而,在标准的HTTP会话中,此作用域并不常见。 - 示例配置:`<bean id="role" class=...
在 Spring 中,bean 的作用域可以分为五种:singleton、prototype、request、session 和 global session。这五种作用域类型决定了 bean 的实例化和生命周期的管理方式。 1. Singleton 作用域 Singleton 作用域是...
1. 使用XML配置文件:可以在XML配置文件中配置Bean的生命周期和作用域。 2. 使用Annotation配置:可以使用Annotation来配置Bean的生命周期和作用域。 3. 使用Java配置:可以使用Java代码来配置Bean的生命周期和作用...
- global session作用域与Portlet API的global session对象相关,它与session作用域相似,不同之处在于它的范围是全局的,适用于Portlet环境。 - application作用域与Servlet API的application对象相关,它使得整个...
在非portlet环境中,通常不会使用Global Session作用域。 理解Spring Bean的作用域对于优化性能、管理资源以及确保正确的行为至关重要。不同的作用域会影响Bean的生命周期,生命周期包括初始化、使用和销毁三个阶段...
在`SSHnote_Spring_6_Scope`这个文件中,可能包含了关于如何在XML配置文件中定义不同作用域的Bean,以及如何在代码中注入和使用这些Bean的示例和解释。通过学习这部分内容,开发者可以更好地掌握Spring框架的核心...
同时,合理使用依赖注入可以帮助管理不同作用域Bean之间的关系。 在编程开发中,Spring提供了多种API和注解来声明和控制Bean的作用域。例如,使用`@Scope`注解可以明确指定Bean的作用域,如`@Scope("prototype")`。...
启用Global Session作用域的方式与Request和Session作用域类似: ```xml <web-app> <listener-class>org.springframework.web.context.request.RequestContextListener </web-app> ``` **配置示例**: ```...
包括`request`、`session`、`globalSession`、`websocket`和`application`,这些作用域分别对应HTTP请求、HTTP会话、全局HTTP会话(如portlet环境)、WebSocket连接以及整个Web应用程序的范围。每种作用域都有其特定...
在Spring框架中,Bean的生命周期管理和作用域是其核心特性之一,它们对于理解Spring如何管理对象的创建、初始化、使用以及销毁至关重要。首先,我们来深入探讨Bean的生命周期。 Spring中的Bean生命周期主要分为两个...
只要用户的会话存在,对应的session作用域Bean就会保持活跃状态。一旦用户的会话结束或过期,这个Bean实例将不再可用。此作用域适用于用户登录信息、购物车等对象。 5. Global Session global session作用域与...
Spring框架中定义了五种作用域,分别是singleton、prototype、request、session和global session。 1. singleton:单例模式,Spring IoC容器中只会存在一个共享的Bean实例,无论有多少个Bean引用它,始终指向同一...
在 Spring 中,Bean 的作用域可以是 singleton、prototype、request、session、globalSession 等。每个作用域都有其特点和应用场景。 * Singleton 作用域:在 singleton 作用域中,Bean 容器将仅创建一个 Bean 实例...
Spring 提供了五种作用域:singleton、prototype、request、session 和 globalSession。每种作用域都有其特点和应用场景。 1. Singleton 作用域 Singleton 作用域是 Spring 容器默认的作用域,在这种作用域中, ...
Spring支持单例(Singleton)、原型(Prototype)、请求(Request)、会话(Session)和全局会话(Global Session)等多种作用域。其中,单例模式是最常见的,确保在整个应用中只有一个Bean实例;而原型模式则每次...
Spring框架提供了五种作用域:Singleton(单例)、Prototype(原型)、Request(请求)、Session(会话)和GlobalSession(全局会话)。其中,Prototype作用域是指每次从容器中获取Bean时,总是创建一个新的Bean...
Spring提供了多种作用域,如`singleton`、`prototype`等,不同的作用域决定了Bean的生命周期和创建策略。 4. **Constructor-arguments**:用于通过构造器注入依赖关系。这种方式通常用于必填的依赖项。 5. **...
- **XML配置**:在传统的Spring应用中,Bean的定义通常写在XML配置文件中,如`springbean-xml`中的配置。 - **注解配置**:使用`@Component`,`@Service`,`@Repository`和`@Controller`注解标记类,配合`@...
XML配置文件中可以使用scope属性指定Bean的作用域,该属性可以接受singleton、prototype、request、session、globalSession五个值。 Spring容器中Bean知识点总结了Bean的基本定义、Bean的作用域和Bean的生命周期三...