Eclipse运行Tomcat第一个小程序

一、eclipse+tomcat集成

1、下载tomcat

2、下载eclipse的tomcat插件(该插件只是在eclipse之中能够管理tomcat,并不是tomcat本身)

下载地址:http://www.eclipsetotale.com/tomcatPlugin.html

3、将下载完成的插件如:tomcatPluginV33.zip 解压缩到 eclipse 目录的 plugins 目录之下,重启下eclipse插件就完成了

4、配置插件管理的tomcat,

  eclipse-》windoes-》Preference-》Tomcat 在其中就可以选择Tomcat版本,如7.0,

  设置tomcat home 也就是Tomcat的解压目录,如:E:\eclipse_java\tomcat\apache-tomcat-7.0.29

5、再次重启下,Eclipse菜单中多了Tomcat,在下拉菜单中就出现了 Start、Stop、Restart Tomcat 命令了,执行Start试下,就可以在console中看到启动信息了。

6、下载来测试下,是否成功:

  通过eclipse -》 tomcat 菜单启动tomcat,然后再浏览器中输入:http://localhost:8080 成功的话就可以看到tomcat主页了

7、创建一个Hello项目:

  Eclipse-》File-》New-》Other 对话框中打开 java 目录,选择 Tomcat Project,确定,然后Project Name填写为Hello

  在Hello项目下创建一个 HelloWorld.java 类,包名称为 Hello 

  

package Hello;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        PrintWriter out = response.getWriter();

        out.write("<html>");
        out.write("<head>");
        out.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset= UTF-8\">");
        out.write("</head>");
        out.write("<body>");
        out.write("<H1>");
        
        String strValue = "Hello World zcs,curr time: " + new Date();
        out.print(strValue);
        out.write("</H1>");
        out.write("</body>");
        out.write("</html>");
    }
}

然后,在WEB-INF下面,创建一个web.xml文件,内容如下:

 

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<display-name>HelloWorld</display-name>
<description>HelloWorld Serlet </description>

<servlet>
<servlet-name>Servlet</servlet-name>
<servlet-class>Hello.HelloWorld</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>Servlet</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
</web-app>

 

8、测试HelloWorld,先启动tomcat,然后在浏览器中输入:http://localhost:8080/Hello/HelloWorld 成功的话,会显示HelloWorld zcs.  注意:url之中的 /Hello/HelloWorld 其中的Hello表示之前创建的Tomcat项目名称,而后面的/HelloWorld 为在web.xml 中配置的 url-pattern.

   (经过测试,其中的Hello应该是context配置文件名,可以查查看tomcat的如配置目录:/usr/tomcat7/conf/Catalina/localhost/ 你在其中会看到一个 Hello.xml 该文件是由tomcat插件创建的,可以通过修改项目属性->tomcat 其中的context name文本框中来修改)。

 

二,遇到的错误:

1)浏览器返回错误: Error instantiating servlet class : 该描述表示无法实例化servlet类,比较可能的原因是你的web.xml 文件中的servlet-class配置错了,比如包名称没有加上去。

2)浏览器返回错误:Unsupported major.minor version 51.0: 解决方法参考自:http://blog.csdn.net/wentasy/article/details/7850212, 主要意思就是说tomcat运行时使用java6,而编译servlet-class使用了java7,导致版本不匹配。处理方法很简单就是在eclipse之中将默认的jdk修改成java6即可。(我采用的方法是:在eclipse中将jdk6设置为默认,并且在创建项目时选择jdk6,创建了项目后,可以在eclipse的项目中看到 JRE System Library[jdk 1.6.045] 其中的jdk1.6表示6,jdk1.7表示7。

三,简单剖析

1)如何不通过eclipse直接在命令行运行:实际上通过eclipse创建的tomcat项目,配置已经帮你弄好了,也就是在tomcat的主目录如(/usr/tomcat7),  添加一个文件配置:/usr/tomcat7/conf/Catalina/localhost/HelloWorld.xml ,这个文件的内容如下:

<Context path="/TomHello" reloadable="true" docBase="/home/bigfish/workspace/java/TomHello" workDir="/home/bigfish/workspace/java/TomHello/work" />

这是一种tomcat的部署方式,可参考:http://blog.csdn.net/jierui001/article/details/4168872

因此只需要运行 /usr/tomcat7/bin/startup.sh 启动,/usr/tomcat7/bin/shutdown.sh 停止。

 

posted @ 2012-07-23 16:17  chang290  阅读(2770)  评论(0编辑  收藏  举报