《JavaWeb编程技术》实验指导书2010年3月目录实验一简单的Servlet与JSP..................................................................................................................1实验二HTTP请求对象...........................................................................................................................3实验三HTTP响应对象...........................................................................................................................7实验四Servlet容器模型..........................................................................................................................9实验五会话管理....................................................................................................................................13实验六JSP基本语法与页面指令.........................................................................................................16实验七JSP隐含对象与作用域.............................................................................................................20实验八Web组件重用与JavaBeans......................................................................................................24实验九JDBC访问数据库.....................................................................................................................27实验十表达式语言的使用....................................................................................................................35实验十一用户自定义标签....................................................................................................................41实验十二JSTL与标签文件..................................................................................................................44实验十三Servlet事件处理....................................................................................................................50实验十四Servlet过滤器的使用............................................................................................................55实验十五Web应用的安全性................................................................................................................59说明:本实验指导书根据《JavaWeb编程技术》课程教学大纲编写,共包括15个实验,每个实验2学时,学生每周完成一个实验。1实验一简单的Servlet与JSP一、实验目的1.了解和掌握Servlet和JSP页面的编写和运行。2.比较Servlet与JSP的区别和联系,体会动态页面的含义。二、实验原理Servlet是运行在服务器端的Java程序,它主要是为了扩展服务器的功能。编写和运行Servlet一般要经过4个步骤:(1)编辑源文件,它是继承HttpServlet的Java类;(2)编译源文件;(3)在服务器中部署该Servlet,即将类文件存放到服务器的适当目录中,并修改web.xml部署描述文件;(4)使用浏览器访问该Servlet程序。JSP是一种服务器端的动态页面技术,它的实质也是Servlet。它的编写较Servlet容易。二者的主要区别是:Servlet通常是实现业务逻辑,而JSP通常实现表示逻辑。三、实验内容与步骤(一)编写和运行一个简单的Servlet【步骤1】在Tomcat安装目录的webapps下建立一个helloapp的目录,在其中再建立一个WEB-INF目录,在WEB-INF目录中建立一个classes目录。这样就建立了一个名为helloapp的Web应用程序。【步骤2】编写下面Servlet类,编译并将类文件放入classes目录中packagecom.demo;importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassHelloServletextendsHttpServlet{publicvoidservice(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{PrintWriterout=response.getWriter();out.println(html);out.println(head);out.println(/head);out.println(body);out.println(h3HelloWorld!/h3);out.println(/body);out.println(/html);}}【步骤3】在WEB-INF目录中建立一个名为web.xml的文件,该文件为Web应用程序的部署描述文件,简称DD。具体内容如下:?xmlversion=1.0encoding=ISO-8859-1?web-appxmlns=:xsi=:schemaLocation=://java.sun.com/xml/ns/j2ee/web-app_2_5.xsdversion=2.5servletservlet-namehelloServlet/servlet-nameservlet-classcom.demo.HelloServlet/servlet-class2/servletservlet-mappingservlet-namehelloServlet/servlet-nameurl-pattern/hello/url-pattern/servlet-mapping/web-app【步骤4】在浏览器的地址栏中输入下列地址访问该Servlet。在浏览器的窗口中应该显示Hello,World!内容。(二)下面的Servlet可显示系统当前时间。请编译并部署该Servlet,然后使用浏览器访问。packagecom.demo;importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassHelloWorldServletextendsHttpServlet{publicvoidservice()throwsServletException,IOException{PrintWriterout=;out.println(html);out.println(head);out.println(/head);out.println(body);out.println(fontcolor='#0000ff');out.println(h3Hello,World!/h3);out.println(Thetimenowis:+newjava.util.Date());out.println(/body);out.println(/html);}}(三)编写下面的JSP文件,将其用hello.jsp名保存到helloapp目录中htmlheadtitleASimpleJSPPage/title/headbodyfontcolor=#0000ffh3Hello,World!/h3Thetimenowis:%=newjava.util.Date()%/font/body/html使用下面的URL访问该页面:(四)运行下面的JSP页面square.jsphtmlbodytableborder=’1’cellspacing=’0’cellpadding=’5’trthnumber/ththsquared/th/tr%for(inti=0;i10;i++){%trtd%=i%/tdtd%=(i*i)%/td/tr%}%/table/body/html(五)改写上述页面,使其运行后产生下列页面。3图1.1square.jsp运行结果四、思考题1.如何安装配置JDK和Tomcat?2.如何在Tomcat中运行Servlet和JSP页面?实验二HTTP请求对象一、实验目的1.掌握如何获得请求参数;2.掌握如何检索请求头;3.了解如何通过请求对象获得客户信息;4.重点掌握使用请求对象存储数据和请求转发。二、实验原理对客户的请求,容器根据请求调用Servlet的相应doXxx()方法,该方法带有两个参数,一个是HttpServletRequest,一个是HttpServletResponse,它们分别表示请求对象和响应对象,它们是容器自动创建的两个对象。可以使用这两个接口定义的若干方法完成有关操作。三、实验内容与步骤(一)通过查询串传递请求参数,并在Servlet中检索请求参数【步骤1】编写下面的Servlet。packagecom.demo;importjava.io.*;impo