我在WEB工程里面的web.xml中定义了这段,
<servlet>
<servlet-name>scanfferServlet</servlet-name>
<servlet-class>
test.scanfferServlet
</servlet-class>
<load-on-startup>11</load-on-startup>
</servlet>
为什么当执行init方法的时候,定时器只执行了一次,后面都没有执行?
我单独运行定时器是可以的。还有问下怎么启动这个service方法?其中,test.scanfferServlet这个类如下:
public class scanfferServlet extends HttpServlet {
private static Logger logger = Logger.getLogger(ManualCMDServlet.class); public void init() throws ServletException {
logger.info("**************scanffer Servlet init*********************");
Timer timer = new Timer();
timer.schedule(new SnifferNoStartOrder(), 0, 2 * 60 * 1000);
super.init();
}

public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
logger.info("**************scanffer Servlet start*********************");
Timer timer = new Timer();
timer.schedule(new SnifferNoStartOrder(), 0, 2 * 60 * 1000);
}
}
SnifferNoStartOrder类是个定时器,如下:
public class SnifferNoStartOrder extends TimerTask{
private static Logger logger = Logger.getLogger(ManualCMDServlet.class); @Override
public void run() {
logger.info("**************SnifferNoStartOrder start*********************");
}
}