《Servlet与JSP核心编程第二版》阅读记录003-第二个与第三个servlet示例程序

来源:互联网 发布:新手怎么装修淘宝店铺 编辑:程序博客网 时间:2024/04/29 20:22

在测试第二个与第三个程序时发现与书上情况不完全一样,有两方面情况要注意:

1 需要加上 doGet()方法

2 在地址栏中不需要输入 coreservlets.

3 程序代码 coreservlets.HelloServlet2.java

package coreservlets;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloServlet2 extends HttpServlet {
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
      throws ServletException, IOException {
    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 (2)</TITLE></HEAD>\n" +
                "<BODY BGCOLOR=\"#FDF5E6\">\n" +
                "<H1>Hello coreservlets.HelloServlet2 cuigh</H1>\n" +
                new java.util.Date() +
                "</BODY></HTML>");
  }
  /**
  *特别说明:下面代码 doPost()方法,原书代码中无,运行环境:360浏览器7.1
  如果不加上,会提示:
  HTTP Status 404 - /HelloServlet3

type Status report

message /HelloServlet3

description The requested resource (/HelloServlet3) is not available.

Apache Tomcat/4.1.24
  */
  public void doPost(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,IOException
  {  
        this.doGet(request,response);  
  }  

    
}

4 程序代码 coreservlets.HelloServlet3.java

package coreservlets;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

/** Simple servlet for testing the use of packages
 *  and utilities from the same package.
 *  <P>
 *  Taken from Core Servlets and JavaServer Pages 2nd Edition
 *  from Prentice Hall and Sun Microsystems Press,
 *  http://www.coreservlets.com/.
 *  &copy; 2003 Marty Hall; may be freely used or adapted.
 */

public class HelloServlet3 extends HttpServlet {
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    String title = "Hello (3) coreservlets.HelloServlet3 cuigh";
    out.println(ServletUtilities.headWithTitle(title) +
                "<BODY BGCOLOR=\"#FDF5E6\">\n" +
                "<H1>" + title + "</H1>\n" +
                new java.util.Date() +
                "</BODY></HTML>");
  }
  /**
  *特别说明:下面代码 doPost()方法,原书代码中无,运行环境:360浏览器7.1
  如果不加上,会提示:
  HTTP Status 404 - /HelloServlet3

type Status report

message /HelloServlet3

description The requested resource (/HelloServlet3) is not available.

Apache Tomcat/4.1.24
  */
  public void doPost(HttpServletRequest request,HttpServletResponse response)
    throws ServletException,IOException
  {  
        this.doGet(request,response);  
  }

}

5 配置文件 web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
 
  <servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>HelloServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>HelloServlet2</servlet-name>
    <servlet-class>coreservlets.HelloServlet2</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>HelloServlet3</servlet-name>
    <servlet-class>coreservlets.HelloServlet3</servlet-class>
  </servlet>
 
  <servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/Helloservlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>HelloServlet2</servlet-name>
    <url-pattern>/Helloservlet2</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>HelloServlet3</servlet-name>
    <url-pattern>/Helloservlet3</url-pattern>
  </servlet-mapping>
 
</web-app>

6 地址栏中输入:

http://127.0.0.1:8080/Helloservlet

Hello Servlet! cuigh

Wed Aug 26 17:29:07 CST 2015

 http://127.0.0.1:8080/Helloservlet2

Hello coreservlets.HelloServlet2 cuigh

Wed Aug 26 17:34:36 CST 2015


http://127.0.0.1:8080/Helloservlet3


Hello (3) coreservlets.HelloServlet3 cuigh

Wed Aug 26 17:35:00 CST 2015




0 0
原创粉丝点击