【Java寒假打卡】JavaWeb-Listener监听器
概述
监听对象的监听器
监听域对象属性变化的监听器
监听会话的感知型监听器
监听器的使用
- ServletContextListener
package com.hfut.filter;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
@WebListener
public class ServletContextListenerDemo implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
// servletContext对象被创建的时候 执行该方法
System.out.println("ServletContext对象被创建");
// 获取对象 使用事件对象获取事件
ServletContext servletContext = servletContextEvent.getServletContext();
System.out.println(servletContext);
}
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
System.out.println("监听到对象的销毁");
}
}
- ServletContextAttributeListener
package com.hfut.filter;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextAttributeEvent;
import javax.servlet.ServletContextAttributeListener;
import javax.servlet.annotation.WebListener;
@WebListener
public class ServletContextAttributeListenerDemo implements ServletContextAttributeListener {
@Override
public void attributeAdded(ServletContextAttributeEvent servletContextAttributeEvent) {
System.out.println("监听到属性的添加");
// 获取应用域对象
ServletContext servletContext = servletContextAttributeEvent.getServletContext();
// 获取属性值
Object username = servletContext.getAttribute("username");
System.out.println(username);
}
@Override
public void attributeRemoved(ServletContextAttributeEvent servletContextAttributeEvent) {
}
@Override
public void attributeReplaced(ServletContextAttributeEvent servletContextAttributeEvent) {
System.out.println("监听到树型的替换");
// 获取应用域对象
ServletContext servletContext = servletContextAttributeEvent.getServletContext();
// 获取属性值
Object username = servletContext.getAttribute("username");
System.out.println(username);
}
}