spring配置之contextConfigLocation与ContextLoaderListener

最近再次学习spring,不知道是spring版本变化的原因还是时间久了记忆不清晰,觉得以前许多知识点都不同了。
话说好记性不如烂笔头,于是尝试写一写blog以作记录。

本篇所写的spring版本是4.1.4

首先、web编程的基础是servlet,servlet配置的作用是拦截http请求,然后触发Servlet类或者监听类。

spring的配置也不例外,它的目的是触发DispatcherServlet,同时装载一个XML资源文件。spring对装载这个配置文件有两种方法。

方法一、

加上init-param,参数为contextConfigLocation,直接告诉spring配置文件的位置。可以读入多个配置文件。

    <servlet>
        <servlet-name>mainServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                classpath:config/applicationContext.xml,
                classpath:config/base/base.xml,
                classpath:config/base/datasource.xml,
                classpath:config/base/aop.xml                           ... 
            </param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>mainServlet</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

方法二:
用org.springframework.web.context.ContextLoaderListener,这个是spring的监听类,它的作用就是加载默认为applicationContext.xml的文件。并且applicationContext.xml与web.xml位于同目录。

<servlet>
        <servlet-name>mainServletservlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
        <load-on-startup>1load-on-startup>
    servlet>
    <servlet-mapping>
        <servlet-name>mainServletservlet-name>
        <url-pattern>*.dourl-pattern>
    servlet-mapping>

    <listener>  
        <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>  
    listener>  

你可能感兴趣的:(spring之杂篇)