关于ServletContext的理解:
1、Web容器在启动时,会为每个Web应用创建一个ServletContext对象,该对象代表了当前web应用;
2、ServletContext用于实现servlet程序与web容器的通信;
3、ServletConfig对象维护了ServletContext对象的引用,在编写servlet时,可以通过ServletConfig.getServletContext()获取ServletContext对象;
4、同一个web应用中,不同的servlet共享同一个ServletContext,可以通过ServletContext实现不同servlet之间的通信;
5、在JSP文件中,application是ServletContext的实例,有JSP容器默认创建。
关于ServletContextListerner:
ServletContextListerner是ServletContext的监听者。
如果ServletContext发生变化,其实现类会执行相应方法,如服务启动时ServletContext被创建,服务器关闭时ServletContext将被销毁。
通过实现该接口,可以在web服务启动时进行数据加载等操作。