Posted on 2006-12-21 21:00
itspy 阅读(2924)
评论(5) 编辑 收藏 所属分类:
JAVA技术
在web.xml设置监听器:org.springframework.web.context.ContextLoaderListener
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
在此类(ContextLoaderListener)中有如下方法:
public void contextInitialized(ServletContextEvent event) {
this.contextLoader = createContextLoader();
this.contextLoader.initWebApplicationContext(event.getServletContext());
}
org.springframework.web.context.ContextLoader
在此类中有如下变量: public static final String CONTEXT_CLASS_PARAM = "contextClass";
public static final String CONFIG_LOCATION_PARAM = "contextConfigLocation";
如下方法:initWebApplicationContext,createWebApplicationContext
第一个方法调用了第二个方法,第二个方法则通过如下代码初始为了一个上下文环境
String configLocation = servletContext.getInitParameter(CONFIG_LOCATION_PARAM);
注:另外一点如下的DispatcherServlet设置会自动加载petstore-servlet.xml环境,原理我查了半天我也不知道怎么搞的.
<servlet>
<servlet-name>petstore</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>