zoukankan      html  css  js  c++  java
  • Spring-如何绑定applicationContext与servletContext的生命周期

    一.applicationContext对象的生命周期

      1.applicationContext是容器对象,一创建时配置的所以对象都会被创建出来,我们希望是创建一份即可,而且在项目运行期间,类都能够在容器中获取到实例;

      2.applicationContext的生命周期希望是能够跟servletContext一样长,即随项目的创建而创建,关闭而摧毁;可以通过servletContext的监听器的生命周期方法中将applicationContext跟servletContext绑定在一起共生死

      3.既然applicationContext在servletContext的监听器的生命周期方法中,就可以获得到事件源即servletContext,进而可以获取到application域;

      4.获取application域有什么用?可以把applicationContext放到application域中,到时候想要获取容器对象时,只需要获取application域对象,根据键值对的方式取得容器对象

    二.Spring的ContextLoaderListener监听器

      1.根据上面的理论是可以将applicationContext与servletContext的生命周期绑定一起,不过spring已经写好了一个监听器用于容器对象和servletContext的绑定

      2.在web.xml中配置该监听器(得导一个web包),如图:

       3.配置完监听器后还不够,还得告诉它sping配置文件在哪,所以还得配置参数路径,参数名必须是contextConfigLocation,值表示到类路径下加载applicationConetxt.xml的文件,如图:

       4.要注意的是我们的spring配置文件的命名和位置是任意的,也就是如果你配置文件丢三落四的话,在web.xml里得配相应的路径,所以建议还是统一下路径在src的applicationContext.xml

    三.获取容器对象

      1.想要获取容器,按正常逻辑的话我们是得获取applicaiton域对象,根据键来获取;不过这个键特别长,所以spring特意提供了一个工具类和方法,只需要我们把servletContext对象给该方法,返回一个我们所需要的容器对象;如图:

    applicationContext与servletContext的生命周期

  • 相关阅读:
    listview 加载性能优化 viewholder
    eclipse使用有感
    android常见的错误
    填充父窗体布局问题
    setTag()/getTag()
    自己动手实现自旋锁
    新手学信息检索6:谈谈二值独立模型
    自己动手编译、运行Java程序
    新手学信息检索5:正确率召回率与搜索引擎的评价
    新手学信息检索4:向量空间模型与相似度计算
  • 原文地址:https://www.cnblogs.com/ibcdwx/p/12760758.html
Copyright © 2011-2022 走看看