一、实验目的
1、了解如何实现Servlet接口来编写Servlet;
2、掌握GenericServlet和HttpServlet抽象类;
3、掌握ServletRequest和ServletResponse接口;
4、掌握ServletConfig接口掌握HttpSession接口;
5、理解Servlet的异常处理。
二、实验环境
Windows 10、MyEclipse10
三、实验原理(或要求):
通过继承HttpServlet实现Servlet。HttpServlet类提供了对HTTP协议的支持,因此仅需从HttpServlet中派生一个子类,在子类中完成相应功能就可以了。
四、实验步骤:
(1)打开myeclipse10分别编写测试页面WelcomeServlet.jsp和WelcomeServlet.java源程序,源代码如下:
eg1:<%@ page language=“java” import=“java.util.*” pageEncoding=“utf-8”%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"?/"+request.getServerName()+":"+request.getServer Port()+path+"/";
%>
用户名:
密 码:
eg2:package com;
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 WelcomeServlet extends HttpServlet {
/**
* Constructor of the object.
/
public WelcomeServlet() {
super();
}
/*
* Destruction of the servlet.
*/
public void destroy() {
super.destroy(); // Just puts “destroy” string in log
// Put your code here
}
public void init(){}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding(“utf-8”);
String username=request.getParameter(“username”);
String password=request.getParameter(“password”);
String welcomeInfo1=“welcome”+","+username;
String welcomeInfo2=“your password is”+":"+password;
response.setContentType(“text/html;charset=utf-8”);
PrintWriter out=response.getWriter();
out.println("");
out.println("");
out.println("
out.println("");
out.println("");
out.println(welcomeInfo1);
out.println("!");
out.println("");
out.println(welcomeInfo2);
out.println("");
out.println("");
out.close();
//response.getWriter().append("Served at: ").append(request.getContextPath());
}
public void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
doGet(request,response);
}
}
(2)在web.xml中配置Servlet <?xml version="1.0" encoding="UTF-8"?>
WelcomeServlet
WelcomeServlet
com.WelcomeServlet
WelcomeServlet
/WelcomeServlet
(3)启动Tomcat,在浏览器中运行.jsp文件、发布Servlet
五、实验记录或结果:
(一)创建一个Servlet
1、右击工程src目录,在弹出的快捷菜单创建一个Servlet文件;
2、单击“Next”按钮,打开对话框,输入Servlet所在的Java的包名、Servlet文件名及指定Servlet所需实现的方法;
3、点击“Next”按钮,进入如图所示界面,可以进一步指定创建Servlet的逻辑名;描述信息、初始化参数和URL映射;
4、单击“Finish”按钮,完成配置后,在src下的com包中创建了一个WelcomeServlet.java文件。查看文件内容,填入输出的代码;
5、查看Servlet的配置信息web.xml文件,可以根据需要来修改内容;
6、在MyEclipse下选中此java文件,右击选择运行此文件,或者在Tomcat下启动该工程。
(二)在编辑窗口编写.jsp源文件
提交表单的方法method应和Servlet的重写实现方法一致
(三)运行结果
六、实验小结
通过本次实验,我了解到了Servlet的概念、特点和工作原理以及创建方法;体会到了与JSP的联系,同时对HttpServlet、ServletRequest和ServletResponse有了一定的认识。最后对doPost()和doGet()两种方法通过实验进行了对比,深有体会!