`
collegeyuan
  • 浏览: 31177 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

启动spring容器

 
阅读更多

在web应用中创建spring容器有以下两种方式:

     1) 直接在web.xml文件中配置spring容器

      2)利用MVC框架扩展点,创建spring容器

 

一、直接在web.xml文件中配置spring容器

       ServletContextListener监听器可以在web应用启动时回调自定义方法——该方法就可以启动spring容器。

       Spring提供了一个ContextLoaderListener,改监听器实现了ServletContextListener接口。该类可以作为Listener使用,它会在创建时自动查询WEB-INF/下的applicationContext.xml,因此,如果只有一个配置文件,并且文件名为applicationContext.xml,则只需在web.xml中增加人如下配置片段即可:

    <listener>

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

</listener>

      如果有多个配置文件需要加载,则考虑使用<context-pararm.../>元素来确定文件的文件名,ContextLoaderListener加载时,会查找名为contextConfigLocation的初始化参数,因此,配置<context-pararm.../>时应指定参数名为contextConfigLocation。

    带多个配置文件的web.xml配置文件如下:

        <?xml version="1.0" encoding="UTF-8"?>

         <web-app xmlns="http://java.sun.com/xml/ns/j2ee"

                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

                 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

           version="2.4">

                    <context-param>

                            <param-name>contextConfigLocation</param-name>

                             <!-- 多个配置文件中间用逗号分隔 -->

                            <param-value>/WEB-INF/config/web-application-config.xml

                                 ,/WEB-INF/config/daoContext.xml</param-value>

                    </context-param>

                 <listener>

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

            </listener>

          </web-app>

 

          Spring根据指定的配置文件创建WebApplicationContext对象,并将其保存在web应用的ServletContext中,如果需要在应用中获取ApplicaitonContext对象,则通过以下代码获取:

            //获取当前web应用启动的spring容器

             WebApplicationContext ctx                                

                          = WebApplicationContextUtils.getWebApplicationContext(servletContext);

分享到:
评论

相关推荐

    spring容器启动和关闭时事件监听

    spring容器启动和关闭时事件监听;spring容器启动和关闭时事件监听;spring容器启动和关闭时事件监听

    在非spring注解类中使用spring容器中的bean_普通类中使用yml配置文件中的配置信息

    然而,在某些情况下,我们可能需要在非Spring注解的类中访问Spring容器中的Bean,或者在这些类中使用YAML配置文件中的配置信息。本篇将详细介绍如何在这样的场景下实现这一目标。 首先,让我们来理解如何在非Spring...

    启动Spring项目详细过程(小结)

    该方法会在web容器中被调用,以便启动spring容器。在contextInitialized()方法中,会调用initWebApplicationContext()方法,以便初始化spring容器。该方法会检查是否已经存在根应用程序上下文,如果不存在,则创建一...

    Java+Spring+Spring容器启动流程方法调用xmind脑图

    1. Spring容器的启动流程 2. 循环依赖 3. Spring 中Bean的创建 4. Spring 方法xmind脑图

    spring.xls

    * lazy-init为“default/false”当启动spring容器的时候创建bean 但是如果该bean是prototype时,特殊。这种情况无效 * 在spring容器启动的时候,就会发现错误 * 有可能会造成一些数据长时间驻留在内存中 * lazy...

    JDK8 下 SpringBoot 应用动态编译 Java 源码并注入 Spring 容器

    基于接口、抽象类实现不停机动态调整代码的目的,将修改后的源码文件放置于指定目录下,读取文件后执行动态编译方法,即可将该类重新加载,新的类可以在Spring容器从新注册,且仅在当前窗口生效。如果重启了服务或...

    获取spring容器的方法

    这样,在Spring容器启动时,它会自动调用`setApplicationContext`方法,将`ApplicationContext`实例注入到实现了`ApplicationContextAware`的类中。 ### 结论 选择哪种方法获取Spring容器主要取决于具体的应用场景...

    详解Spring IOC 容器启动流程分析

    Spring IOC 容器启动流程分析 Spring IOC 容器是 Java 企业级应用程序的核心组件之一,它提供了一个统一的依赖注入机制,使得应用程序的组件之间能够松耦合。Spring IOC 容器的启动流程是整个 Spring 框架的核心...

    spring和struts整合的三种方案

    在这种方案中,我们通过在 `struts-config.xml` 文件中添加 `ContextLoaderPlugIn` 类来启动 Spring 的 IOC 容器。`ContextLoaderPlugIn` 是 Spring 提供的一个插件,它会在 Struts 应用启动时自动加载 `...

    spring依赖注入例子

    5. **启动Spring容器:** 创建一个主应用类,使用`@SpringBootApplication`注解启动Spring Boot应用。Spring容器会自动扫描指定包下的注解,创建并管理bean。 6. **运行示例:** 当应用程序运行时,Spring容器会...

    spring资料2

    在Spring05_Spring容器入门.wmv这个视频中,你可能会学习到如何创建Spring配置文件,定义bean的属性,以及如何启动Spring容器并从中获取bean实例。理解Spring容器的工作原理和API使用是掌握Spring框架的关键。 总的...

    struts 整合spring 例子,测试通过

    **6.4.1 利用Struts的PlugIn来启动Spring容器** 在整合过程中,Spring通常不会直接参与到Struts的Action实例化中。相反,Struts使用插件(PlugIn)机制来启动Spring容器。有两种方法创建Spring容器: 1. **直接在...

    Spring容器启动流程.txt

    Spring 容器启动流程

    Spring 容器后处理器

    BeanFactoryPostProcessor接口是Spring框架提供的一个接口,用于扩展Spring容器的功能。该接口只有一个方法`postProcessBeanFactory`,该方法在容器加载完成之后被调用,可以用来改变容器中的配置或做一些初始化工作...

    spring环境搭建基础用例

    4. **加载配置并启动Spring容器**:在Java代码中,我们需要使用`ClassPathXmlApplicationContext`或`FileSystemXmlApplicationContext`加载配置文件,启动Spring容器。例如: ```java ApplicationContext context...

    Spring学习笔记&源码

    1. **简单应用示例**:展示一个基础的Spring配置,如何启动Spring容器并运行一个简单的Hello World程序。 2. **IoC实践**:包含各种Bean的定义和注入方式的代码实例,比如单例、原型、工厂bean等。 3. **AOP示例**...

    sprigioc容器配置元数据

    至于“使用在独立环境中去加载和使用spring容器”,这通常指的是在不依赖于任何Web服务器或应用服务器的情况下,直接启动Spring容器并运行应用程序。这可以通过使用`ApplicationContext`来实现,如`...

    spring的Java项目

    在"spring-hello"这个子文件中,很可能是演示了Spring框架的基本使用,例如创建一个简单的Hello World应用程序,展示如何配置和启动Spring容器,以及如何定义和注入Bean。这样的示例对于初学者来说是非常有帮助的,...

    spring+ajax+mybatis+springmvc笔记

    - **组件扫描**:Spring 容器启动后会扫描指定包下的所有类,如果类前有 `@Component` 等注解,则会将其纳入容器管理。 - **其他相关注解**: - `@Autowired` 和 `@Qualifier`:支持 setter 或构造器注入,用于...

    spring笔记

    + 启动 Spring 容器加载配置文件,实例化其中配置好的对象,并按照指定的名字存在 Spring 容器中 BeanFactory 和 ApplicationContext * BeanFactory:延迟加载,使用 bean 时才进行初始化 * ApplicationContext:...

Global site tag (gtag.js) - Google Analytics