实验4-Servlet容器模型

上传人:夏** 文档编号:511551385 上传时间:2023-12-21 格式:DOCX 页数:9 大小:48.86KB
返回 下载 相关 举报
实验4-Servlet容器模型_第1页
第1页 / 共9页
实验4-Servlet容器模型_第2页
第2页 / 共9页
实验4-Servlet容器模型_第3页
第3页 / 共9页
实验4-Servlet容器模型_第4页
第4页 / 共9页
实验4-Servlet容器模型_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《实验4-Servlet容器模型》由会员分享,可在线阅读,更多相关《实验4-Servlet容器模型(9页珍藏版)》请在金锄头文库上搜索。

1、实验 4 Servlet 容器模型一、实验目的1. 掌握Web应用程序的DD文件web.xml的配置方法和作用;2. 掌握如何通过ServletConfig获取Servlet的初始化参数;3. 掌握ServletContext的概念,如何获得ServletContext对象;4. 掌握如何通过RequestDispatcher转发请求。二、实验原理Web 应用程序有严格定义的目录结构,它需要一个称为部署描述文件的文件 web.xml 来配置。对应用程序的每个Servlet,可以在web.xml中定义若干个初始化参数,然后通过 ServletConfig 对象获取这些参数。ServletCont

2、ext 对象表示该应用程序的环境,通过该对象可以获得应用程序范围的初始 化参数、容器版本信息、资源的URL、在其中存放共享数据以及登录日志等。三、实验内容与步骤(一)名为bookstore的Web应用程序的目录结构 在Tomcat的webapps目录下,项目目录结构如下所示。|- bookstoreI- html (包含所有的H TML文件)I- jsp (包含所有的JSP文件)|- images (包含所有的GIF、JPEG和BMP图象文件)|- index.html (默认的 H TML 文件)I- WEB-INF|-classesP lib 卜 web.xml图 4.1 bookstor

3、e 应用程序的目录结构这样就建立了一个名为bookstore的Web应用程序,本实验后面的题目都在该应用程序 下面完成。(二)使用 ServletConfig 检索 Servlet 的初始化参数 【步骤1】编写ConfigDemoServlet程序,内容如下: package cn.edu.servlet;import java.io.*;import java.sql.*;import javax.servlet.*;import javax.servlet.http.*;public class ConfigDemoServlet extends HttpServlet String se

4、rvletName=null;ServletConfig config=null;String email=null;String telephone=null;public void init() config = getServletConfig();servletName = config.getServletName();email = config.getInitParameter(email);telephone = config.getInitParameter(telephone);public void service(HttpServletRequest request,

5、HttpServletResponse response) throws ServletException,IOException response.setContentType(text/html;charset=gb2312);PrintWriter out = response.getWriter(); out.println();out.println(Servlet 名称:+servletName+vbr); out.println(Email 地址:+email+);out.println(” 电话:+telephone); out.println();【步骤2】修改web.xml

6、文件,在其中添加下面Servlet定义和初始化参数定义 configDemoServlet cn.edu.servlet.ConfigDemoServlet email telephone 88991231 configDemoServlet /configDemo.do【步骤3】在浏览器的地址栏中输入下面URL访问该Servlet:http:/localhost:8080/bookstore/configDemo.do程序运行结果如下图所示:图4.2 ConfigDemoServlet程序的运行结果(三)ServletContext 的使用修 改上面 程序, 将 email 地 址和电 话使

7、 用 ServletContext 初始 化参 数传 递给ConfigDemoServlet。使用ServletContext对象将email地址和电话信息写入日志文件中,并 查看日志文件。(五)下面是一个Servlet,它可以获得有关服务器的信息。package cn.edu.servlet;import java.io.*;import java.util.*;import javax.servlet.*;public class ServerInfo extends GenericServlet public void service(ServletRequest request, Se

8、rvletResponse response) throws ServletException, IOException response.setContentType(text/html;charset=GB2312); PrintWriter out = response.getWriter(); ServletContext sc = getServletContext();out.println();out.println();out.println();out.println(vtitle 获取服务器端信息 /title);out.println();out.println(); o

9、ut.println(vh2服务器端信息:v/h2);out.println();out.println();out.println(vtd width=175站 点名 ); out.println( + request.getServerName() + ); out.println();out.println(); out.println(vtd 端口号); out.println( + request.getServerPort() + ); out.println();out.println(); out.println(vtd 服务器类型 ); out.println( + sc.g

10、etServerInfo() + ); out.println();out.println(); out.println(vtd支持 Servlet 版本); out.println(+sc.getMajorVersion()+.+sc.getMinorVersion()+); out.println();out.println(); out.println(vtd 服务器属性 v/td); out.println();/ 获得服务器属性集合Enumeration attributes = sc.getAttributeNames();while (attributes.hasMoreElem

11、ents() String name = (String)attributes.nextElement(); out.println(name);out.println();out.println();out.println();out.println();out.println();誉 webjtml痂 Serverinfo .java| MjE匚li陛eb Edw汽http:/l ca 1 host: SOSO/bookstcrre/myServerl nfo服务器端信息,站点名localhost端口号8080服务器类型Apache Tomcat/7. 0. 22支持Servlet版本3.

12、 0服务器属性javax. servlet, context, tempdirrg. apache, jasper, compiler. T1dLocationsCache org. apache, catalina. jsp_classpathrg. apache, catalina. resourcesorg. apache, tomcat. JarScannerrg. apache, tomcat. InstanceManager图 4.3 ServerInfo 程序的运行结果(六)简单的综合应用(代码见附录)【步骤1】创建一个名为input.html的HTML页面,其中包括一个表单,表

13、单中包含两 个文本域,分别供用户输入学号和姓名,该页面也包含提交和重置按钮。【步骤2】定义一个名为cn.edu.jp.data.Student类,其中包括学号sno和姓名name两个 private的成员变量,定义访问和修改sno和name的方法。【步骤3】编写名为FirstServlet的Servlet,要求当用户在input.html中输入信息后点击 “提交”按钮,请求 FirstServlet 对其处理。在 FirstServlet 中使用表单传递的参数(学号和 姓名)创建一个 Student 对象并将其作为属性存储在 ServletContext 对象中,然后获得通过 ServletContext 的 getRequestDispatcher()方法获得 RequestDispatcher()对象,将请求转发到 SecondServlet。【步骤 4】 在 SecondServlet 中取出 ServletCon

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号