《Web应用程序设计实验》实验指导书-实验八
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验八Servle t技术的应用
一、实验目的
(1)、掌握怎样编写和使用Servlet。
(2)、掌握编写和配置和Servlet有关的web.xml文件。
(3)、掌握在Servlet中使用session的方法;熟悉把用户对某JSP页面或Servlet的请求转发给另一个JSP页面或Servlet的方法。
二、实验工具
(1)JDK1.4、JDK1.5或JDK1.6,可以从SUN公司的网站免费下载
(2)编辑工具:记事本或Dreamweaver MX 2004、FrontPage 2003
(3)Tomcat服务器,也可以从网上免费下载
(4)Netbeans 4.1或Jcreator
三、实验原理与内容
(1)、有些Web应用可能需要JSP+JavaBean+Servlet来完成,需要服务器再创建一些Servlet对象,配合JSP页面来完成整个Web应用程序的工作。本小节实验将介绍怎样编写创建Servlet对象的类,怎样在Tomcat服务器上保存编译后的字节码、编写部署文件,怎样请求Tomcat服务器创建一个Servlet对象。
①复制需要的jar文件:为了编译Servlet源文件,需要HttpServlet、HttpServletRequest等类,JDK 内置包中并不包含这些类文件,用户需要将Tomcat服务器中common\lib目录下的servlet-api.jar文件复制到JDK安装目录的\jre\lib\ext子目录中。
②添加Servlet类的字节码文件:编写如下的Servlet类:Computer.java,保存在D:盘根目录下,编译该类,形成star\moon\Computer.class,将此文件夹保存到Tomcat当前Web目录(如:ROOT目录)下的\WEB-INF\classes子目录中,重新启动Tomcat。
Computer.java:
package star.moon;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Computer extends HttpServlet
{ public void init(ServletConfig config) throws ServletException
{ super.init(config);
}
public void service(HttpServletRequest request,HttpServletResponse response)
throws IOException
{ response.setContentType("text/html;charset=GB2312");
PrintWriter out=response.getWriter();
out.println("
");String number=request.getParameter("number"); //获取客户提交的信息。
double n=0;
try{ n=Double.parseDouble(number);
out.print("
"+number+"的平方根是:");
out.print("
"+Math.sqrt(n));
}
catch(NumberFormatException e)
{ out.print("
请输入数字字符!
");}
out.println("");
}
}
③编写部署文件:在Web当前目录\WEB-INF\classes子目录中,用记事本打开web.xml文件,在“”标记下,添加如下几行并保存:
④运行Servlet:编写givenumber.jsp文件,该文件通过表单向Servlet提交一个正实数,Servlet负责计算这个数的平方根并返回给客户。
givenumber.jsp
<%@ page contentType="text/html;Charset=GB2312" %>
输入一个数,servlet求这个数的平方根:
(2)、当用户请求一个Servlet时,Sevlet会调用doPost()或doGet()方法响应用户的请求。doPost()或doGet()方法的两个参数类型都是HttpServletRequest和HttpServletResponse,而且由服务器负责实例化,因此在Servlet类中可以直接使用这两个参数。本小节实验学习在Servlet类中使用HttpServletResponse类的重定向方法sendRedirect()和RequestDispatcher类的转发方法forward()。
①添加Servlet类的字节码文件:编写如下的两个Servlet类:Verify.java和ShowMessage.java,保存在D:盘根目录下,编译该类,形成***.class的字节码文件,将此文件夹保存到Tomcat当前Web 目录(如:ROOT目录)下的\WEB-INF\classes子目录中。
V erify.java
package star.moon;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Verify extends HttpServlet
{ public void init(ServletConfig config) throws ServletException
{super.init(config);
}