博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Spring的加载

Posted on 2013-03-18 14:22  言冰的夏虫  阅读(157)  评论(0编辑  收藏  举报

       当工程中,需要用到IoC工具Spring时,首先需要将其加载到工程的启动文件中。其启动配置配置项是在web.xml文件中。

       一般来说,Spring的配置文件名称都是applicationContext.xml。但有时,我们可能会改变该配置文件名称和配置文件所在的目录地址。因此,Spring也提供了对该配置文件的

这些信息的配置方法。

      首先是Spring的启动加载。

      Spring的启动加载配置,有2种方法。其一是利用Servlet 2.3 Listener接口实现,一种是利用Servlet接口实现。

      (一)、Listener接口实现方法:在web.xml中添加如下的内容:     

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

    (二)、Servlet的实现方法:

    在web.xml文件中,添加如下内容:  

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

  对与以上2种方法,当需要对Spring的配置文件applicationContext的文件名,或文件目录地址进行配置的时候,方法如下:    

<context-param>
     <param-name>contextConfigLocation</param-name>
     <param-value>
	/WEB-INF/classes/applicationContext.xml,/WEB-INF/classes/service-context.xml
     </param-value>
</context-param>

    如上面,applicationContext.xml和servie-context.xml都是Spring的配置文件,通过上面的方法可以对其进行指定。

     如果不对Spring.xml文件的文件名和目录进行指定,Spring默认加载编译后,classes目录下的applicationContext.xml文件。

     另外还有一个比较重要的配置信息,是内存泄露的配置。Spring本身不会存在内存泄露的问题,但是如果在工程中使用了其它的一些框架,如Struts或Quartz,在可能存在内

存泄露的情况。因此Spring提供了一个清除内存可能泄露工具类,Spring利用它刷新Introspector,防止内存泄露。可以在web.xml如下配置:    

<listener>
    <listener-class>
	   org.springframework.web.util.IntrospectorCleanupListener
    </listener-class>
</listener>