Different between ServleConfig and ServletContext
Many servlet’s developers are confuse about the different between “ServletConfig” and “ServletContext”. Actually the “ServletContext” name is quite confusing, it should change to “AppConfig” or “AppContext” in the future release
ContextConfig
1) This is one per “web application”, access globally by all the servlets’ class
2) web.xml – within the web-app element and outside the servlet element
<web-app ...> <servlet> <servlet-name>ServletName</servlet-name> <servlet-class>com.mkyong.ServletDemo</servlet-class> </servlet> <context-param> <param-name>email</param-name> <param-value>admin@email.com</param-value> </context-param> </web-app>
3) Servlet code
getServletContext().getInitParameter("email")
==> See the ServletContext example here
ServletConfig
1) This is one per “servlet”, only access for each specific servlet
2) web.xml – within the servlet element
<web-app ...> <servlet> <servlet-name>ServletName</servlet-name> <servlet-class>com.mkyong.ServletDemo</servlet-class> <init-param> <param-name>email</param-name> <param-value>admin@email.com</param-value> </init-param> </servlet> </web-app>
3) Servlet code
getServletConfig().getInitParameter("email")
==> See the ServletContext example here


