Eclipse中Tomcat插件的安装和与调试

网络整理 - 07-27
    Visual Age for Java是IBM所开发的Java IDE开发环境。早在几年前,就已经占了Java开发平台的半壁江山,而近来已有好长时间没出新版本了,原因在于IBM全心投入了Eclipse项目的研究,好多Java开发者肯定也注意到了这一点。Eclipse是一个开发源码项目,它其实是Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到(官方网站在),并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。 

  我们且不管Eclipse能否成为真正的集大成者,但据笔者在J2EE开发上的使用,Eclipse就已锋芒毕露,比先前的Visual Age for Java强劲了许多,更显得即插即用,下载一个Tomcat插件,就能很容易的调用外部独立安装的Apache Tomcat进行JSP、Servlet的调试。还是先睹为快,来看看Eclipse加上Tomcat来跟踪调试Servlet有多简单吧!

  我们需要先到去下载Tomcat插件,下载后直接解压缩到Eclipse的plugins目录下。之后再启动Eclipse ,在IDE中选择“Window”菜单的“Customize Perspective…”,展开弹出窗口的Other结点,可以看到下面有Tomcat选项,打上钩按“OK”关闭窗口。做完了这一步,在IDE的工具栏就会有变化,是不是兴奋地看到了可爱的Tomcat小猫图标呢!不过别急着去按小猫按钮,还需要到“Window”菜单的“preferences”去做些设置,正确选择你所安装的Tomcat版本,指定Tomcat主目录和Tomcat的server.xml配置文件,然后展开Tomcat,选下面的JVM Setting,选择JRE为“Detected VM”,确认无误后按“OK”关闭窗口即可。到这儿,所有的配置工作都做完了,按下小猫图标启动Tomcat,就可以看?onsole窗口出现“Starting service Tomcat-Standalone……”等Tomcat启动信息了。

  启动成功后,我们做一个简单的Servlet加以测试。选IDE的“File”下面的“Project”菜单,注意要选择“Tomcat Prject”,然后按“Next”直到结束,其间根据窗口提示信息输入Servlet名称、工作目录等信息,以及选择是否自动更新server.xml。为简单起见,我们选择自动更新server.xml文件,虚拟目录为名ServletDemo。在工程上加入自己的Servlet类,作为示例,笔者定义了一个简单的TestServlet类,来计算5!(5的阶乘)等于多少,Servlet代码和web.xml部署描述器如下所示:

public class TestServlet extends HttpServlet {
 private static final String CONTENT_TYPE = "text/html; charset=GBK";
 public void doGet(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
  response.setContentType(CONTENT_TYPE);
  PrintWriter out = response.getWriter()

  int n = 1;
  for (int i = 1; i <= 5; i++) {
   n *= i;
  }

  out.println("<html>");
  out.println("<head><title>TestServlet</title></head>");
  out.println("<body>");
  out.println("<P>5! = " + n + "</P>");
  out.println("</body></html>");
  out.close();
 }
}

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "">
<web-app>
 <servlet>
  <servlet-name>TestServlet</servlet-name>
  <servlet-class>TestServlet</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>TestServlet</servlet-name>
  <url-pattern>/TestServlet</url-pattern>
 </servlet-mapping>
</web-app>



  保存好上面的代码和XML描述文件,在浏览器中键入“:8080/ServletDemo/TestServlet”,就可以看到 “5! = 120”了,是吗?

  下面我们在“n *= i;”那一行设一断点来跟踪计算过程。在浏览器窗口中按刷新按钮,然后返回Eclipsep窗口,是不是在在断点那一行出现了蓝条呢?下面的过程熟悉Visual Age for Java的读者应该明白了吧,按F6跟踪到下一语句,按F5跟进调用过程。