Tomcat启动时,自动访问本地servlet

来源:互联网 发布:淘宝充值卡代理 编辑:程序博客网 时间:2024/05/16 14:31

通过监听器来实现 

1.自定义一个类 CallLocationServelt 实现  ServletContextListener 

并覆盖其  contextInitialized(ServletContextEventarg0)方法

public void contextInitialized(ServletContextEvent arg0) {// TODO Auto-generated method stubSystem.out.println("CallLocationServelt监听器启动了");//利用定时器来执行每3秒访问一次Timer timer = new Timer();timer.schedule(new TimerTask(){ public void run(){//初始化http请求客户端HttpClient httpClient =new DefaultHttpClient();//使用get方法进行请求HttpGet httpGet = new HttpGet("http://localhost:8080/CallLocationServelt/servlet/LocalServlet");try {//执行请求,并将结果存入Http响应对象中HttpResponse  response = httpClient.execute(httpGet);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} }}, 0, 3*1000);

2. 在web.xml配置该监听器,让其在 tomcat 启动时便执行

  <listener>      <listener-class>      CallLocationServelt    </listener-class>   </listener>

 3. 编写一个简单的servlet ,供监听器来访问

public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("访问LocalServlet次数:"+(calltime++));}


完整的项目可以下载: http://download.csdn.net/detail/ch717828/8394573


参考文献:http://blog.csdn.net/cai5/article/details/7528888

http://download.csdn.net/detail/aaayongaaa/5300578

http://download.csdn.net/detail/linzhijia0612/4965858


0 0
原创粉丝点击