可按如下方法试试:
第1种方法:
写一个servlet,在servlet的init方法里启动这个守护线程。
在web.xml中布署这个servlet时设置成启动时装载(具体参数为load-on-startup,值是多少可以参考相关文档,你设成0试试)。第2种方法:
修改tomcat安装目录下bin\startup.bat文件,在这里启动你写的守护进程。

解决方案 »

  1.   

    你可以利用线程,在页面中启动一个线程,在线程的run中调用你的守护线程的任务。我就是这样实现在页面中启动和停止我自己做的MAIL服务程序,向用户提供EMAIL邮箱服务
      

  2.   

    如果你还想让TOMCAT启动时自己启动,
    可以用一个类来实现。类中定义一段静态代码。
    这段代码启动一个线程,线程中在启动你的任务这样你只要把你的类放在TOMCAT启动就需要加载的路径下
    就可以了,当类被加载,这段静态代码就被执行了
      

  3.   

    我给你一个例子<%@ page contentType="text/html; charset=GBK" %>
    <%@ page import="java.sql.*,javax.naming.*,java.io.*"%>
    <%try{
      class Task extends Thread{
        public void run(){
          //这里调用你的服务,需要长时间运行的
          //我用了一个循环模拟你的服务
          while(true){
            System.out.println(new java.util.Date(System.currentTimeMillis()));
            try{
            sleep(1000);
            }catch(Exception e){
              e.printStackTrace();
            }
          }
        }
      }
      Task t=new Task();
      t.start();
    }catch(Exception ex){
      ex.printStackTrace();
      
    }
    %>
    <html>
    <head>
    <title>
    test
    </title>
    </head>
    <body>
    <h1>
    JBuilder Generated JSP
    </h1>
    服务已经启动</body>
    </html>
      

  4.   

    如果你要写在SERVLET中类似,你就自己改了如果你要他在启动的时候就加载,你可以让这个SERVLET在TOMCAT启动就加载,而把你的线程放在
    类的静态代码中。具体我就不细说了