这里介绍的就是一个客户流失监听器案例

新建一个监听器实现ServletContextListener接口 覆写contextDestroyed和contextInitialized 方法

package listener;
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class LostListener implements ServletContextListener {
private Timer timer; //定时器

//服务器关闭的时候会自动调用
public void contextDestroyed(ServletContextEvent arg0) {
  timer.cancel();
  System.out.println("客户监听任务已关闭");
}

//服务器启动的时候会自动调用
public void contextInitialized(ServletContextEvent arg0) {
  System.out.println("客户监听任务已启动");
  timer = new Timer();
  LostTask lostTask=new LostTask();
  //开启服务器后多少毫秒去执行一次lostTask类中的run方法 过多少毫秒之后再去执行一边这个类中的方法
  timer.scheduleAtFixedRate(lostTask, 0, 60*60*1000);//每过一个小时去执行一次
  }
}

新建一个定时器 集成TimerTask类重写run方法

package listener;
import java.sql.Date;
import java.util.Calendar;
import java.util.List;
import java.util.TimerTask;

public class LostTask extends TimerTask {
@Override
public void run() {
  System.out.println("进入执行任务类 run..........");
  Calendar c=Calendar.getInstance();
  int week=c.get(c.DAY_OF_WEEK);//星期几
  int hour=c.get(c.HOUR_OF_DAY);//第几个小时
  if(week==7&&hour==24){指定每个星期的几点钟开始执行
  System.out.println("客户流失情况扫描开始了。。。。。。。。");
  List<CstCustomer> list=CustMethod.getCustomers();

  //根据扫描的情况去以短信或邮件的形式提示流失的客户信息代码处理

  System.out.println("扫描完成。。。。。。。。");
  }
}

web.xml配置

<listener>
<listener-class>listener.LostListener</listener-class>
</listener>

最新文章

  1. reactiveCocoa
  2. &lt;java基础学习&gt;RE 基础语法
  3. 最快让你上手ReactiveCocoa之进阶篇
  4. HDU5900
  5. 搭载hexo+github博客系统
  6. work3
  7. 更新Android SDK 访问谷歌等无需代理方法
  8. 负载均衡-多台机子session不起效:把php.ini中file改为memcache存储
  9. 关于AIX VG中 LV 的状态问题,LV STATE
  10. Citrix 服务器虚拟化之六 Xenserver虚拟机创建与快照
  11. Time_wait问题小结
  12. cannot create windows service for mysql
  13. Hibernate Error: a different object with the same identifier value was already associated with the session
  14. PostgreSQL:安装及中文显示
  15. CSAPP深入理解计算机系统(第二版)第三章家庭作业答案
  16. 北大poj- 1034
  17. JupyterLab绘制:柱状图,饼状图,直方图,散点图,折线图
  18. springmvc 获取请求头信息
  19. 原生js删除元素
  20. 实操重写IK分词器源码,基于mysql热更新词库

热门文章

  1. ios 区域检测 使用coreLocation
  2. Quick-Cocos2dx 快速了解
  3. 《大话》之 策略模式 Vs 状态模式
  4. MySql数据库安装&amp;修改密码&amp;开启远程连接图解
  5. Laravel之Service Container服务容器
  6. css3 总结01
  7. 如何定义移动端字体Font-Family?
  8. node EventEmitter 注册事件
  9. kafka 集群安装与安装测试
  10. MFC 设置控件事件对应的函数