listener概述
- (1)什么是监听器?
Listener是用来监听域对象 - (2)什么是域对象?
HttpServletContext HtttpSession HttpRequest HttpPageContext - (3)类比
班主任监听同学的状态 - (4)监听器有哪些?
Listener监听域对象创建和销毁 生死
Listener监听域对象属性的变化 变化 - (5)有什么特点
》1 没有监听地址
》2 不同的对象使用不同的监听器
listener的使用
- 1、编写ServletContextListener接口实现类,用于监听ServletContext对象的创建与销毁
- 2.1、直接在类上添加注解@WebListener(),不用写地址,表示为监听器。
@WebListener()
public class MyServletContextListener implements ServletContextListener {
//ServletContext域对象 在服务器启动时创建
//这个方法用来监听ServletContext域的创建
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
System.out.println("ServletContext域的创建啦");
}
//ServletContext域对象 在服务器关闭时销毁
//这个方法用来监听ServletContext域的销毁
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
System.out.println("ServletContext域销毁啦");
}
}
- 2.2、在web.xml注册监听器
在spring整合springmvc会用到。
定时器
JDK提供工具类Timer,用于触发定时器,执行TimeTask执行任务
public class TestDemo {
public static void main(String[] args) {
//1、定时器核心类
Timer timer = new Timer();
//2、定时执行指定任务
//参1:需要执行的任务
//参2:执行任务的延迟时间,单位:毫秒
//参3:执行任务的周期,单位:毫秒
timer.schedule(new TimerTask() {
@Override
public void run() {
System.out.println("--定时发送邮件");
}
}, 5000, 2000);
}