package com.cqa.cms.utils;
import java.sql.SQLException;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.springframework.web.context.support.WebApplicationContextUtils;
import com.cqa.cms.entity.CMSColumn;
import com.cqa.cms.service.IColumnTreeService;
import com.cqa.cms.service.IStatisticsColumnService;
public class TimerListener implements ServletContextListener {
private Timer timer = null;
public void contextDestroyed(ServletContextEvent arg0) {
timer.cancel();
}
public void contextInitialized(ServletContextEvent arg0) {
timer = new Timer();
timer.schedule(new RemoveTopTopicsTask(arg0.getServletContext()), 10000, 1000 * 6 * 1);
}
class RemoveTopTopicsTask extends TimerTask {
private ServletContext context;
public RemoveTopTopicsTask(ServletContext context){
this.context = context;
}
@Override
public void run() {
IColumnTreeService columnTreeService= WebApplicationContextUtils.getWebApplicationContext(context).getBean("columnTreeService", IColumnTreeService.class);
IStatisticsColumnService statisticsColumnService = WebApplicationContextUtils.getWebApplicationContext(context).getBean("statisticsColumnService", IStatisticsColumnService.class);
try {
List<CMSColumn> list = columnTreeService.columnsTree();
statisticsColumnService.accountStatistics(list);
System.out.println(list);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
作者“a729812804”