`

使用web.xml方式加载Spring时,获取Spring context的两种方式

阅读更多

 

使用web.xml方式加载Spring时,获取Spring context的两种方式:

 

1、servlet方式加载时:

【web.xml】

  <servlet>
        <servlet-name>dispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/applicationContext</param-value>
        </init-param>
    </servlet>

 

【jsp/servlet】

 

ServletContext context = getServletContext();
  
  XmlWebApplicationContext applicationContext = (XmlWebApplicationContext) context.getAttribute("org.springframework.web.servlet.FrameworkServlet.CONTEXT.dispatcherServlet");


  DataSource dataSource=(DataSource)applicationContext.getBean("dataSource");

 

 

2、listener方式加载时:

【web.xml】

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/applicationContext</param-value>
 </context-param>

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

 

【jsp/servlet】

 

ServletContext context = getServletContext();

   
   WebApplicationContext applicationContext  = WebApplicationContextUtils
     .getWebApplicationContext(context);
   

 

  DataSource dataSource=(DataSource)applicationContext.getBean("dataSource");

分享到:
评论
2 楼 cysunc 2008-09-21  
不好意思,从来没有碰到过你说的这种情况。
因为应用服务器运行正常,在对应的web应用中,调用getServletContext()这个内置方法不应该为null。
1 楼 xy_z487 2008-09-19  
2、listener方式加载时:
【jsp/servlet】



ServletContext context = getServletContext();

获取的context 为null 从而获取不到  WebApplicationContext applicationContext

不知道为什么 得到的 servletcontext 为null

相关推荐

    web.xml加载顺序与web.xml常用节点解析

    可以通过使用`&lt;listener&gt;`来加载Spring,而不是传统的`&lt;context-param&gt;`配合`ContextLoaderListener`。 - 遵循`web.xml`的规范和约定,确保配置文件的正确性和可读性,避免因顺序问题导致的部署失败。 了解`web....

    加载spring 文件,在web.xml中的配置

    `&lt;listener&gt;`标签中的`&lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt;`定义了一个监听器,它会在Web应用启动时自动加载默认的Spring配置文件,即`/WEB-INF/...

    详解Spring mvc的web.xml配置说明

    在Spring MVC中,`org.springframework.web.context.ContextLoaderListener`是一个关键监听器,它实现了`ServletContextListener`接口。当Web应用程序启动时,Tomcat或Jetty等容器会触发此监听器,进而加载Spring的...

    java解决org.springframework.web.context.ContextLoaderListener

    在Java Web开发中,`org.springframework.web.context.ContextLoaderListener` 是Spring框架的一部分,它负责初始化一个Web应用程序的Spring上下文。这个监听器是基于Servlet容器(如Tomcat、Jetty等)的,当Web应用...

    SpringMVC基于代码的配置方式(零配置,无web.xml)

    import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation....

    web.xml文件中配置(servlet, spring, filter, listenr)的加载顺序

    org.springframework.web.context.ContextLoaderListener ``` 这段代码指定了一个Listener类`ContextLoaderListener`,该类由Spring框架提供,用于在应用程序启动时加载Spring的上下文配置。 #### Filter ...

    spring在web.xml中和在struts中的不同配置..pdf

    在本文中,我们将探讨Spring在`web.xml`中的配置与在Struts中的配置差异,以及这两种配置方式背后的基本原理。 首先,Spring的核心是ApplicationContext,它是一个管理Bean的容器,可以看作是应用程序的上下文环境...

    struts.xml和applicationContext.xml、web.xml的配置

    &lt;filter-class&gt;org.springframework.web.context.ContextLoaderFilter &lt;filter-name&gt;contextLoaderFilter &lt;url-pattern&gt;/* ``` 这部分配置将Struts2的过滤器和Spring的上下文加载过滤器映射到所有的URL,确保...

    解析web.xml中在Servlet中获取context-param和init-param内的参数

    在Java Web开发中,`web.xml`是应用的部署描述符,它包含了应用程序的各种配置信息。其中,`context-param`和`init-param`是两个重要的元素,用于设置应用级和Servlet级的初始化参数。理解它们的用法和如何在Servlet...

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

    本篇文章将深入探讨Spring在`web.xml`中与在Struts中的不同配置方式,以及这两种方式背后的设计思想。 首先,ApplicationContext是Spring的核心组件,它是一个容器,负责管理和装配应用程序中的Bean。在Web应用中,...

    spring bean XML配置入门

    一旦XML配置加载到Spring容器中,容器将根据配置创建Bean实例,并按照定义进行初始化、依赖注入,最后完成Bean的生命周期管理。 10. **实践操作**: 在实际开发中,我们可以使用Eclipse的Spring插件来简化Bean...

    SSH和SSI等框架常用基础配置web.xml

    &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter &lt;param-name&gt;encoding &lt;param-value&gt;utf-8 &lt;filter-name&gt;encodingfilter &lt;url-pattern&gt;/* ``` **解析**:这里定义了一个字符...

    Spring在web.xml中的配置详细介绍

    首先,要理解Spring在web应用中主要通过两种方式提供上下文(Context)加载器:一种是基于Listener接口实现的ContextLoaderListener,另一种是基于Servlet接口实现的ContextLoaderServlet。这两种方式在功能上是相同...

    web.xml中ContextLoaderListener的运行过程解析

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 这个配置告诉Servlet容器在Web应用启动时实例化并注册`ContextLoaderListener`。 ### 4. `ContextLoaderListener`的运行流程 1. **...

    快速搭建一个java config(无web.xml)的web工程(二)

    在Java开发领域,Web应用程序的配置方式有很多种,其中一种是使用Java Config,它提供了一种无需XML配置的方式来创建和管理Spring框架中的bean。本篇文章将详细介绍如何快速搭建一个基于Java Config的Web工程,该...

    web.xml中的listen

    - **加载Spring配置文件**:这主要是通过`org.springframework.web.context.ContextLoaderListener`类实现的。该类是Spring框架提供的一个监听器类,用于在Web应用启动时加载Spring的应用上下文(ApplicationContext...

    快速搭建一个java config(无web.xml)的web工程(一)

    在早期的Spring应用中,配置主要通过XML文件完成,但随着Spring的发展,Java Config的出现使得我们可以使用纯Java代码来配置应用,减少了XML的使用,提高了可读性和维护性。本篇文章将指导你如何快速搭建一个不依赖...

    springmvc、spring、mybatis的resources配置文件和web.xml

    `beans.xml`管理应用对象,`servlet-context.xml`定义Spring MVC的处理逻辑,`mybatis-config.xml`配置MyBatis的数据访问,而`web.xml`则作为应用的入口,协调各个组件的启动和运行。理解并熟练配置这些文件,对于...

    web.xml配置解析[总结].pdf

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener ``` 当Servlet容器启动时,`ContextLoaderListener`会查找`ApplicationContext`的配置文件,通常是`/WEB-INF/applicationContext....

Global site tag (gtag.js) - Google Analytics