码迷,mamicode.com
首页 > 其他好文 > 详细

如何成功运行一个最简单的servlet

时间:2015-06-16 19:03:27      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

好吧,又是一个简单到不能再简单的问题~~

由于各种原因,这次就不上图了,直接步骤和代码了。

1、前期准备

    jdk、tomcat、EditPlus(eclipse)安装成功并且设置好环境变量。

2、由于jdk(JavaSE)是无法直接编译servlet的,所以需要将tomcat安装目录\lib\servlet-api.jar复制到java安装目录\lib下,并且为了确保没有问题,可以在系统变量CLASSPATH后面加上“;%CATALINA_HOME%\lib\servlet-api.jar”(前提是CATALINA_HOME要设置好啊。。)

3、创建文件结构

    我在tomcat的webapps目录下新建了一个my文件夹,下面又新增了src文件夹(放所有的java文件包括servlet)、WEB-INF文件夹(放所有的classes类、jar包、静态页面和web.xml),WEB-INF文件夹里新建两个文件夹:classes和lib。

4、现在可以写代码了,在src文件夹下新建文件夹servlet,在servlet文件夹内新建一个java文件,命名为HelloWorldServlet.java。

 1 package servlet;
 2 
 3 //打包,注意这个地方,待会在配置web.xml时会用到
 4 
 5 import javax.servlet.http.*;
 6 import javax.servlet.*; 
 7 import java.io.*;
 8 
 9 //以上三个导入语句都是servlet要用到的,尤其是前两个
10 
11 public class HelloWorldServlet extends HttpServlet{
12 
13     protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException{
14 
15         PrintWriter out = resp.getWriter();         //打印流,自动flush,不会抛出异常         
16         out.println("<html><head><title>Hello</title></head><body>HelloWorld!</body></html>");
17      
18         //作用是输出HelloWorld!字段         
19 
20         out.flush();
21 
22         //flush()    清空缓冲区的数据
23 
24         out.close();
25 
26         //关闭
27 
28     } 
29 }
30         

因为我用的是EditPlus,所以就手动来编译一下吧(实话说一个两个都也没啥,多了我也不知道怎么办比较好。。。)

运行——cmd——cd D:\apache-tomcat-8.0.12\webapps\my\src\servlet(这个路径根据实际情况可以改)——javac HelloWorldServlet.java

如果出现乱码的问题,请参见我的上一篇文章《解决java文件编码和windows7系统(中文版)默认编码冲突所导致的乱码情况

成功编译之后,将生成的class文件复制到WEB-INF文件夹的classes文件夹中。注意,因为HelloWorldServlet.java的位置是在servlet文件夹内,所以在这里也要如法炮制,在classes文件夹里也要新建servlet文件夹,并将HelloWorldServlet.class文件放入其中。

5、别以为这就完事了。。配置web.xml同样是件大事。如果没有配置这个,100%报404(我才不会告诉你我蛋疼了好长时间)

如果你用的是eclipse或者其他的工具的话,可以在建立项目时就选择创建默认的web.xml(内面的内容非常少,只有一些欢迎的页面设置)。我是用的tomcat里example项目中改的,大家可以参考:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 
 3 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"   
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation
="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    version
="3.1"
metadata-complete
="true"> 4 5 <servlet> 6 <servlet-name>Hello</servlet-name> 7 <servlet-class>servlet.HelloWorldServlet</servlet-class> 8 </servlet> 9 <servlet-mapping> 10 <servlet-name>Hello</servlet-name> 11 <url-pattern>/HelloWorldServlet</url-pattern> 12 </servlet-mapping> 13 </web-app> 14

加粗的内容是针对上文中写的servlet的设置。大家可以如法炮制(实话说我也讲不太明白,大家自行百度吧)。。。

6、最后,启动tomcat,输入http://localhost:8080/my/HelloWorldServlet ,搞定。

如何成功运行一个最简单的servlet

标签:

原文地址:http://www.cnblogs.com/rainyeagle/p/4581353.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!