ServletConfig与ServletContext的区别与联系

        首先明白一点就是ServletConfig与ServletContext的对象都是在Servlet中通过getServletConfig()与getServletContext()方法获取的。而且HttpServlet和GenericServlet都实现了ServletConfig接口和Servlet接口。

(1)ServletConfig 是此servlet 的容器tomcat(将servlet 部署到的那个servlet 容器)读取web.xml中此servlet的配置信息。

          ServletContext 是此Servlet 的容器tomcat(将servlet 部署到的那个servlet 容器)读取web.xml中所有servlet的配置信息。

          我们可以查看帮助文档,如ServletContext 提供的getServletNames()方法。

(2)ServletContext 范围比ServletConfig大。此处的范围指ServletConfig有的方法,ServletContext也有。

(3)ServletConfig 提供getServletContext()方法来获得ServletContext对象。

(4)ServletContext 还有一个最大的好处就是解决session(一套窗口关闭后,另开新窗口信息无法记忆的问题)。

         如创建application。在doXX()方法中构造一个ServletContext application=this.getServletContext();此时的application范围大很多。当重新开启新窗口后调用的还是这个application,它存储着以前窗口的信息。它也是使用getAttribute()和setAttribute()。

你可能感兴趣的:(tomcat,session,servlet,application,存储,文档)