广东商学院 web开发实验项目五 Servlet技术开发实验-Web-
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
课程名称Web开发技术
实验项目名称实验项目五
Servlet技术开发实验
班级与班级代码(2012-2013-1)-113283-11006-2 实验室名称(或课室)实验楼403 专业2010信息管理与信息系统1班任课教师傅清波
学号:
姓名:
实验日期:2012 年 11 月 13 日
广东商学院教务处制
姓名实验报告成绩
评语:
指导教师(签名)
年月日说明:指导教师评分后,实验报告交院(系)办公室保存。
实验项目五Servlet技术开发实验
一、实验目的
1、了解和掌握Servlet接口的使用方法;
2、掌握Servlet的配置方法;
3、掌握Web监听的常用的方法;
4、掌握Web应用过滤器的开发方法。
二、实验内容
参照教材第7章内容,完成一个Servlet程序的开发和配置过程。参照教材第8
章内容,创建Web监听和过滤程序。
三、实验原理
Servlet技术原理、Web监听和过滤原理。
四、实验环境
电脑主机CPU intel core i5-2450m、RAM 6G,操作系统Windows 7 64位,开发工具Myeclipse8.5。
五、实验步骤
(一)Servlet程序的开发和配置过程
1、打开Myeclipse8.5软件,新建一个web工程“jsp56”;
图1:新建“jsp56”工程
2、在src文件夹下新建一个com包;
图2:新建“com”包
3、在com包下新建一个servlet,配置如下图,输入源代码并保存;
图3:新建servlet并配置
图4:输入源代码
4、运行工程“jsp56”,在浏览器中输入链接http://127.0.0.1:8080/jsp56/hello 访问;
(二)创建Web监听
1、在com包下新建一个MyServletContextListener类,输入代码并保存;
图5:新建MyServletContextListener类
图6:输入源代码并保存
2、编辑WebRoot/WEB-INF/web.xml文件,部署监听器;
图7:部署监听器
3、编写测试程序test.jsp对其进行测试,输入代码并保存;
图8:新建test.jsp
3、在浏览器中输入链接http://127.0.0.1:8080/jsp56/test.jsp访问,访问成功后可在C盘下浏览执行的结果记录test.txt;
4、实现监听HTTP会话,在com包下新建一个SessionListener类;
5、新建index.jsp、display.jsp、session.jsp、login.jsp、logout.jsp、end.jsp 等页面并输入代码:
图9:新建JSP页面
6、编辑WebRoot/WEB-INF/web.xml文件,部署监听器;
图10:部署监听器
(三)创建过滤程序
1、在com包下新建一个EncodingFilter类,输入代码并保存;
2、编辑WebRoot/WEB-INF/web.xml文件,部署过滤器;
图12:部署过滤器
图13:声明过滤器初始函数
3、新建SignonFilter.java
图14:新建SignonFilter类4、配置auth过滤器
图15
图16
图17
图15-图17:配置auth过滤器
六、实验结果
(一)通过配置和调试,“Servlet程序的开发和配置实验”的结果如下:
图18:最终实验结果页面
(二)通过配置和调试,“创建web监听程序”的结果如下:
图19:访问test.jsp
图20:保存执行结果记录的test.txt文件
(三)过滤程序测试结果
1、访问http://127.0.0.1:8080/jsp56/index.jsp,控制台提示如下信息:
2、在首页输入名称与事件,点击提交,进入session.jsp页面,控制台提示如下信息:
七、实验分析
对于servlet技术,需要先写一个相应的java类,然后需要在web.xml文件中增加对servlet的描述,最后就可实现对servlet的访问。
而对于web监听,通过创建监听程序对某些动作进行监听,同样需要在web.xml 文件中对其进行描述。
最后是过滤器的开发,过滤器是客户端发来请求所要经历的第一道关卡,可以实现多种功能,比如完成可以验证客户是否来自可信的网络,对数据重新编码,获得系统配置信息等。与servlet和监听程序一样,它也需要在web.xml文件中进行描述才能正常工作
工程中包含的文件如下图所示:
八、实验结论
在本次实验中,最重要的对web.xml文件的配置,不管是servlet、Filter还是Listeners,若在web.xml文件中对其配置错误,都可能造成网站访问异常。同时通过此
次实验,能了解和掌握servlet、监听器、过滤器的基本原理。为以后的JSP编程巩固基础。
附源代码:
//EncodingFilter.java(\jsp56\src\com)
package com;
import javax.servlet.FilterChain;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.servlet.FilterConfig;
public class EncodingFilter implements Filter
{
protected FilterConfig filterConfig;
private String targetEncoding = "gb2312";
/**
*初始化过滤器,和一般的Servlet一样,它也可以获得初始参数。
*/
public void init(FilterConfig config) throws ServletException {
this.filterConfig = config;
this.targetEncoding = config.getInitParameter("encoding");
}
/**
*进行过滤处理,这个方法最重要,所有过滤处理的代码都在此实现。
*/
public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain chain) throws IOException, ServletException {
System.out.println("使用以下方法对请求进行编码:encoding="+targetEncoding);
HttpServletRequest request = (HttpServletRequest)srequest;