`

WebApplicationContext : org.springframework.web.context.ContextLoaderListener作用

 
阅读更多

如果您想要在自己所定义的Servlet类别中使用Spring的容器功能,则也可以使用 org.springframework.web.context.ContextLoaderListener,例如在web.xml中使用< listener>标签加以定义:

...
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
...


ContextLoaderListener预设会读取applicationContext.xml,您可以指定自己的定义档,只要在<context-param>中指定"contextConfigLocation"参数,例如:

...
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/beans-config.xml,
→ /WEB-INF/demo-service.xml</param-value>
</context-param>
...


接着您可以在自定义的Servlet中使用 org.springframework.web.context.support.WebApplicationContextUtils,从 ServletContext中取得org.springframework.web.context.WebApplicationContext,例如:

WebApplicationContext ctx =
WebApplicationContextUtils.
getRequiredWebApplicationContext(
this.getServletContext());


WebApplicationContext实作了ApplicationContext介面,是Spring专为Servlet的Web应用程式设计的 ApplicationContext实作类别,在取得WebApplicationContext之后,您可以利用它来取得Bean定义档中定义的 Bean实例,例如:
Date date = (Date) ctx.getBean("dateBean");


在不支援Listener设定的容器上(例如Servlet 2.2以更早的版本),您可以使用org.springframework.web.context.ContextLoaderServlet来取代上面的ContextLoaderListener的设定,例如:

...
<servlet>
<servlet-name>contextLoader</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
...

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    spring-web-2.5.jar

    org.springframework.web.context.ContextLoaderListener.class org.springframework.web.context.ContextLoaderServlet.class org.springframework.web.context.ServletConfigAware.class org.springframework.web....

    struts2驱动包

    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843) at org....

    spring-simple-web:使用 Spring Framework 的简单 Web (WAR) 项目

    Web 应用程序使用 Spring Web 侦听器初始化,例如web.xml org.springframework.web.context.ContextLoaderListener 。 Spring Web 侦听器使用web.xml的contextConfigLocation上下文参数进行初始化。 此设置的...

    Spring的监听器ContextLoaderListener的作用

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt; 这样, ContextLoaderListener 就会自动装配 spring 配置文件。 ContextLoaderListener 是 Spring 框架中一个非常重要的...

    Web项目中使用Spring, 使用 Spring 的器监听器 ContextLoaderListener.docx

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 3. **指定Spring配置文件位置**: 在`web.xml`中通过`contextConfigLocation`指定Spring配置文件的位置,通常是在WEB-INF目录下...

    在Eclipse 中创建Spring的 Web应用.doc

    Spring框架提供了对Web应用的支持,其中包括`org.springframework.web.context.WebApplicationContext`接口。这个接口扩展了`ApplicationContext`,专门为Web应用设计,提供了处理HTTP请求和响应的能力。与传统的`...

    spring在web.xml中和在struts中的不同配置.[收集].pdf

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` `ContextLoaderListener`监听Web应用程序的启动和结束,它在服务器启动时加载`contextConfigLocation`指定的配置文件,并创建...

    Spring源码学习七:web应用自动装配Spring配置文件1

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation classpath:applicationContext.xml; &lt;/context-param&gt; ``` 这段配置告诉Web...

    Spring与Web环境集成.pdf

    org.springframework.web.context.ContextLoaderListener 5. 通过工具获得应用上下文对象 使用WebApplicationContextUtils工具,我们可以获得应用上下文对象ApplicationContext,例如: ApplicationContext ...

    Spring中ApplicationContext加载机制

    org.springframework.web.context.ContextLoaderListener ``` 或者,使用 ContextLoaderServlet 可以增加以下配置信息: ```xml &lt;servlet-name&gt;context org.springframework.web.context....

    Spring-5.1.5源码

    在这个版本中,我们主要关注`spring-web`模块中的`org.springframework.web.context.ContextLoaderListener`类,它是Spring MVC应用的核心部分。 `ContextLoaderListener`是一个实现了`javax.servlet....

    精品专题(2021-2022年收藏)spring项目中监听器作用.doc

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation &lt;param-value&gt;classpath:conf/spring/applicationContext.xml &lt;/context-param&gt; `...

    44 Spring控制器Controller如何设置AOP?慕课专栏1

    `ContextLoaderListener`创建的ApplicationContext存储在`ServletContext`的一个属性中,键为`"org.springframework.web.context.WebApplicationContext.ROOT"`,而`DispatcherServlet`创建的WebApplicationContext...

    Spring获取webapplicationcontext,applicationcontext几种方法详解

    `import org.springframework.web.context.support.WebApplicationContextUtils;` `ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext sc);` `...

    Spring整合Struts

    &lt;plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"/&gt; ``` 为了自定义配置文件的位置,可以使用"contextConfigLocation"属性: ```xml &lt;plug-in className="org.springframework.web....

    Spring与Web环境集成1

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 这里,`contextConfigLocation`参数用于指定Spring配置文件的位置,通常是`classpath:`开头,表示在类路径下查找。 5. **通过...

    spring3.x的读书笔记3

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 2. **ContextLoaderServlet启动WebApplicationContext** 对于不支持容器监听器的旧版Web容器,可以使用ContextLoaderServlet,...

    Spring 管理filter 和servlet

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 4. **配置Filter代理或Servlet代理的mapping** 继续在`web.xml`中定义Filter代理或Servlet代理的mapping,指定其拦截的URL模式...

    Spring之WEB模块配置详解

    org.springframework.web.context.ContextLoaderListener ``` 在上面的代码中,我们使用了监听器来加载 Spring 的配置文件。 5. Spring WEB 模块的字符编码过滤器 在 Spring WEB 模块中,我们可以使用字符编码...

    spring配置.txtspring配置.txt

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener &lt;servlet-name&gt;context &lt;servlet-class&gt;org.springframework.web.context.ContextLoaderServlet &lt;load-on-startup&gt;0 ``` - **...

Global site tag (gtag.js) - Google Analytics