package com.liying.pear.queue;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.apache.log4j.Logger;
import com.liying.monkey.core.util.BeanFactory;
import com.liying.pear.web.order.service.OrderService;
/**
* 进程监听器
*
* @author jqlin
*
*/
public class ProcessingListener implements ServletContextListener {
private static final Logger logger = Logger.getLogger(ProcessingListener.class);
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
final OrderService ticketService = BeanFactory.getBean(OrderService.class);
if(ticketService == null) {
logger.warn("没有匹配的下单服务:" + OrderService.class.getName());
return;
}
new Thread(new Runnable() {
@Override
public void run() {
ticketService.initSendOrder();
}
}).start();
}
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
}
}
布署 ServletContextListener
你实现(implements)了 ServletContextListener 编译后,把它放在正确的WEB-INF/classes目录下,更改WEB-INF目录下的 web.xml文件,在web-app节点里添加:
<listener>
<listener-class>com.liying.pear.queue.ProcessingListener</listener-class>
</listener>