刚刚使用Tomcat6做Web项目的时候,启动很快,大约2s就启动了,现在需要10s左右,是建立的Web项目中的哪些内容使得Tomcat启动逐渐变慢呢?(我说的启动变慢不是我机子的配置问题造成的,我的是酷睿2,1G)
请问哪位高手教我如何做下优化?-------------------------------------------------------Tomcat6启动输出的内容如下:usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { start | stop }
2009-9-22 10:10:22 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\bin;C:\tomcat6\bin
2009-9-22 10:10:22 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8088
2009-9-22 10:10:22 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 702 ms
2009-9-22 10:10:22 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2009-9-22 10:10:22 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.18
2009-9-22 10:10:23 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2009-9-22 10:10:23 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2009-9-22 10:10:26 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8088
2009-9-22 10:10:27 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-9-22 10:10:27 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/31  config=null
2009-9-22 10:10:27 org.apache.catalina.startup.Catalina start

解决方案 »

  1.   

    因为你在Tomcat中发布的工程越来越多,越来越大,所以就启动慢了,你要是想启动快,把webApp和work文件夹下的工程文件夹删掉,重启,Tomcat就回到以前的速度了……
      

  2.   

    我想让程序实现页面的跳转,可是在运行时第二个文件总是报错,查了好久了也不知道应该改哪里,请各位帮忙看看,谢谢!
    提示的错误信息是:
    严重: Servlet.service() for servlet CheckLog threw exception
    java.lang.NullPointerException
    at student.lsx.CheckLog.doGet(CheckLog.java:33)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
    at java.lang.Thread.run(Unknown Source)第一个Java文件:
    package student.lsx;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    /**
     * Servlet implementation class Login
     */
    public class Login extends HttpServlet {
    private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public Login() {
            super();
            // TODO Auto-generated constructor stub
        }
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //中文乱码问题:
    response.setContentType("text/html;charset=gbk");
    PrintWriter pw=response.getWriter();
    pw.println("<html>");
    pw.println("<body>");
    pw.println("<h1>登陆界面</h1>");
    pw.println("<form action=CheckLog method=post>");
    pw.println("用户名:<input type=text name=username ><br>");
    pw.println("<br>");
    pw.println("密码:<input type=password name=psw ><br>");
    pw.println("<input type=submit value=login><br>");
    pw.println("</form>");
    pw.println("</body>");
    pw.println("</html>");
    }
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    this.doGet(request,response);
    }}第二个Java文件:
    package student.lsx;
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    /**
     * Servlet implementation class CheckLog
     */
    public class CheckLog extends HttpServlet {
    private static final long serialVersionUID = 1L;
        /**
     * 
     */
    /**
         * @see HttpServlet#HttpServlet()
         */
        public CheckLog() {
            super();
            // TODO Auto-generated constructor stub
        }
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //接受用户名和密码
    String us=request.getParameter("username");
    String ps=request.getParameter("psw");
    //验证
    System.out.println(us);
    System.out.println(ps);
    if(us.equals("lsx")){
    //合法跳转到welcome界面
    response.sendRedirect("Welcom");
    }
    else{
    //不合法
    //跳转到登陆界面
    response.sendRedirect("Login");
    }
    }
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    this.doGet(request, response);
    }}
    第三个文件:
    package student.lsx;import java.io.IOException;
    import java.io.PrintWriter;import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;/**
     * Servlet implementation class Welcom
     */
    public class Welcom extends HttpServlet {
    private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public Welcom() {
            super();
            // TODO Auto-generated constructor stub
        } /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    PrintWriter pw=response.getWriter();
    pw.println("welcom!");

    } /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    this.doGet(request, response);
    }}