每个 Web应用一个ServletContext
每个 servlet一个ServletConfig
 
 
上下文初始化参数
< context-param >
     < param-name >contextConfigLocation param-name >
     < param-value >classpath:spring*.xml param-value >
   context-param >
  ....
 
servlet初始化参数
< servlet >
     < servlet-name >BeerParamTests servlet-name >
     < servlet-class >TestinitParams servlet-class >
     < init-param >
       < param-name >foo param-name >
       < param-value >bar param-value >
     init-param >
   servlet >

getServletContext().getInitParameter("foo");
getServletConfig().getInitParameter("foo");

上下文初始化参数 对Web应用中所有servlet和JSP都可用。
servlet初始化参数 只对配置了的相应servlet可用。
 
 
ServletContext初始化过程:
容器读DD(即web.xml),为每个创建一个名/值String对。
容器创建ServletContext的一个新实例。
容器为ServletContext提供上下文初始化参数各个名/值对的引用。
在Web应用中部署的各个Servlet和JSP都能访问同样的ServletContext。
 
ServletConfig初始化过程:
容器读取这个servlet的DD。
容器为这个servlet创建一个新的ServletConfig实例。
容器为每个Servlet初始化参数创建一个String名/值对。
容器向ServletConfig提供名/值初始化参数的引用。
容器创建servlet类的一个实例。
容器调用servlet的init()方法,传入ServletConfig的引用。