最近再次学习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>mainServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mainServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>