Posted on 2006-12-21 21:00 
itspy 阅读(2962) 
评论(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>