WebListener
public class ServletContextDemo1 implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
System.out.println("ServletContextDemo1监听到了");
ServletContext servletContext = sce.getServletContext();
servletContext.setAttribute("username","zahngsan");
servletContext.setAttribute("username","lisi");
servletContext.removeAttribute("username");
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("对象销毁了");
}
}
@WebListener
public class ServletContextDemo2 implements ServletContextAttributeListener {
@Override
public void attributeAdded(ServletContextAttributeEvent scae) {
System.out.println("添加操作执行了");
ServletContext servletContext = scae.getServletContext();
Object username = servletContext.getAttribute("username");
System.out.println(username);
}
@Override
public void attributeRemoved(ServletContextAttributeEvent scae) {
System.out.println("移除操作执行了");
ServletContext servletContext = scae.getServletContext();
Object username = servletContext.getAttribute("username");
System.out.println(username);
}
@Override
public void attributeReplaced(ServletContextAttributeEvent scae) {
System.out.println("替换操作执行了");
ServletContext servletContext = scae.getServletContext();
Object username = servletContext.getAttribute("username");
System.out.println(username);
}
}
<listener>
<listener-class>com.itheima.filter.ServletContextDemo1</listener-class>
</listener>
<listener>
<listener-class>com.itheima.filter.ServletContextDemo2</listener-class>
</listener>