配置Servlet有两种方法:
1.直接创建Servlet
例如:在BSystem项目下的com.sky.servlet包下创建UserServlet
在src下右击“new”,选择“servlet”,出现“Servlet Wizard”界面:
其中“superclass”已经选择“javax.servlet.http.HttpServlet",
点击”next”,出现“XML Wizard”界面:
修改“Servlet/JSP Mapping URL”中的值,可以修改成“/UserServlet”,也可以不修改,点击“Finsh”。
完成后,会出现在com.sky.servlet包下出现一个“UserServlet.java”文件。里面的内容如下:
package com.sky.servlet;
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;
public class UserServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public UserServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method
* equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the
* client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request,
HttpServletResponse response)throws ServletException,
IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML
4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" This is ");
out.print(this.getClass());
out.println(", using the GET method");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method
* equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the
* client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request,
HttpServletResponse response)throws ServletException,
IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML
4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" This is ");
out.print(this.getClass());
out.println(", using the POST method");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
你可以在你所需要的方法中写相应代码。
直接创建Servlet,会在/WebRoot/WEB-INF/web.xml的配置文件中增加以下内容:
<servlet> <description> This is the description of my J2EE component </description> <display-name> This is the display name of my J2EE component </display-name> <servlet-name>UserServlet</servlet-name> <servlet-class>com.sky.servlet.UserServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>UserServlet</servlet-name> <url-pattern>/servlet/UserServlet</url-pattern> </servlet-mapping>
其中的配置信息和“XML Wizard”界面中的信息是一致的。
2 手动的配置
(1)创建一个普通的class文件UserServlet.java文件。让其继承至于HttpServlet类,并继承其类中的方法。
(2)在WebRoot/WEB-INF/web.xml文件中配置,其配置信息和第一种方法中的WebRoot/WEB-INF/web.xml相似。
ps:其中<description></description>内中的信息可以省略点。
其实两种方法也是一种方法,无非是第一种不用写配置文件,MyEclipse会根据你在创建Servlet时输入的配置信息,自动生成。