一、环境
本文档中的开发环境和部署环境为:
JDK:1.6.0
Tomcat:6.0
二、简单的例子
Servlet的编写很简单,你可以在Eclipse或myEclipse等工具中来完成,其初略的框架如下:
import java.io.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
......
}
1、HelloServlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("Hello Servlet");
}
}
1)将该文件保存成HelloServlet.java,然后编译成对应的class文件。
2)在Tomcat的webapps目录下面新建目录HelloServlet,目录结构如下所示:
-HelloServlet
--META-INF
--WEB-INF
--classes
--lib
--web.xml
这个目录结构是tomcat发布web应用的标准目录结构。
classes目录下面保存编译出来的class文件;
lib目录下面主要保存一些需要用到的jar包,这里用不到;
web.xml是tomcat发布web应用时的配置文件。
将上面编译出来的class文件拷贝到classes目录中。
3)修改web.xml文件
通常情况下,默认生成的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">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
为了发布前边编写的Servlet,需要在该文件中增加如下的内容:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
注意:在一个web.xml文件中,可以同时发布多个Servlet,它们之间互不干涉,但是需要注意,在配置web.xml文件的时候,不能存在同名的servlet-name。
4)启动Tomcat,并访问
(我是新建的目录是WebRoot)
到此,一个简单的Servlet成功发布了。
2、生成HTML的Servlet
注意:在生成HTML内容的时候,必须先设置content type。如代码中的加粗一行。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
//设置content type
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String docType =
"<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.0 " +
"Transitional//EN/">/n";
out.println(docType +
"<HTML>/n" +
"<HEAD><TITLE>Hello</TITLE></HEAD>/n" +
"<BODY BGCOLOR=/"#FDF5E6/">/n" +
"<H1>Hello</H1>/n" +
"</BODY></HTML>");
}
}
三、总结
开发Servlet不是一件复杂的事情,能很快的入手,在发布的时候,需要注意配置web.xml文件。