Web技术及应用
实验3 JSP内置对象
[实验目的]
1.熟练掌握怎样在JSP页面中使用request内置对象。
2.熟练掌握怎样在JSP页面中使用response对象动态响应用户的请求。
3.熟练掌握怎样在JSP页面中使用session对象存储和用户有关的数据。
4.进一步熟悉其它JSP内置对象的用法。
[实验要求]
1.复习理论教学中所学的内容。
2.认真进行实验预习,查阅参考书,书写源程序。
3.实验完成后认真书写实验报告,着重记录实验过程中出现的问题、实验结果;分析
实验现象;总结涉及的知识点;再次实验,得出解决问题的方法,将其体现在实验
总结中。
[实验课时] 2学时
[实验教学方式] 学生上机实验,教师随堂指导。
[实验内容与步骤]
1.编写一个JSP页面inputNumber.jsp该页面提供一个表单,用户可以通过表单输入两个数和四则运算符号提交给该页面。用户提交表单后,JSP页面将计算任务交给一个Tag文件Computer.tag去完成。
inputNumber.jsp的具体要求
inputNumber.jsp页面提供一个表单,要求表单中提供两个text输入框,供用户输入数字;提供一个select下拉列表,该下拉列表有加、减、乘、除四个选项,供用户选择运算符号。用户在表单中输入的数字、选择运算符号提交给inputNumber.jsp页面。inputNumber.jsp使用Tag标记调用Tag文件Computer.tag,并将表单提交的数字和运算符号传递给Computer.tag。Computer.tag的具体要求
要求Computer.tag使用attribute指令得到JSP页面传递过来的值,使用variable指令将计算结果,并将计算结果返回给JSP页面。
inputNumber.jsp效果图
2. 编写两个JSP页面input.jsp和result.jsp。input.jsp页面提交一个数字给result.jsp页面,result.jsp页面使用response对象做出动态响应。
input.jsp的具体要求
input.jsp提供表单,用户在表单中输入一个数字,提交给result.jsp页面。
result.jsp的具体要求
result.jsp页面首先使用request对象获得input.jsp页面提交的数字,然后根据数字的大小作出不同的响应。如果数字小与0,response对象的调用setContentType(String s)方法将contentType属性的值设置为text/plain,同时输出数字的平方;如果数字大于等于0并且小于100,response对象的调用setContentType(String s)方法将contentType属性的值设置为application/msword,同时输出数字的立方;如果数字大于等于100,response对象调用setStatus(int n)方法将状态行的内容设置为404;如果用户在input.jsp页面输入了非数字,response对象调用sendRedirect(URL url)方法将用户的重定向到input.jsp页面。
input.jsp效果图
result.jsp效果图
3.编写四个JSP 页面inputGuess.jsp、result.jsp、small.jsp、large.jsp和success.jsp,实现猜数字游戏。具体要求如下
inputGuess.jsp的具体要求
用户请求inputGuess.jsp时,随机分配给该用户一个1到100之间的数。该页面同时负责将这个数字存在用户的session对象中。该页面提供表单,用户可以使用该表单输入自己的猜测,并提交给result.jsp页面。
result.jsp的具体要求
result.jsp页面负责判断inputGuess.jsp提交的猜测是否和用户的session对象中存放的那个数字相同,如果相同就将用户重定向到success.jsp;如果不相同就将用户重定向到large.jsp 或small.jsp。
small.jsp和large.jsp的具体要求
small.jsp和large.jsp页面提供表单,用户可以使用该表单继续输入自己的猜测,并提交给result.jsp页面。
success.jsp的具体要求
success.jsp页面负责负责显示用户成功的消息,并负责输出用户session对象中的数据。
inputGuess.jsp效果图
large.jsp效果图
small.jsp效果图
large.jsp效果图
4. 完成教材P73例题3-14,利用application内置对象统计网站访问人数。
5. 完成教材P77例题3-17,利用session内置对象模拟实现“简单购物”车应用。
[参考代码]
1. JSP页面参考代码
inputNumber.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="computer"%>
<% String a=request.getParameter("numberOne");
String b=request.getParameter("numberTwo");
String operator=request.getParameter("operator");
if(a==null||b==null)
{
a="";
b="";
}
if(a.length()>0&&b.length()>0)
{
%> numberB="<%=b%>" operator="<%=operator%>"/> 计算结果:<%=a%><%=operator%><%=b%>=<%=result%> <% } %> Tag文件参考代码 Computer.Tag <%@ tag pageEncoding="gb2312"%> <%@ attribute name="numberA" required="true" %> <%@ attribute name="numberB" required="true" %> <%@ attribute name="operator" required="true" %> <%@ variable name-given="result" scope="A T_END" %> <% try { double a=Double.parseDouble(numberA); double b=Double.parseDouble(numberB); double r=0; if(operator.equals("+")) { r=a+b; } else if(operator.equals("-")) { r=a-b; } else if(operator.equals("*")) { r=a*b; } else if(operator.equals("/")) { r=a/b; } jspContext.setAttribute("result",String.valueOf(r)); } catch(Exception e) { jspContext.setAttribute("result","发生异常:"+e); } %> 2. input.jsp <%@ page contentType="text/html;charset=GB2312" %>
<%@ page contentType="text/html;charset=GB2312" %>
<% String str=request.getParameter("number");
try
{ double number=Double.parseDouble(str);
if(number<0)
{
response.setContentType("text/plain;charset=GB2312");
out.println(number+"的平方:"+(number*number));
}
else if(number>=0&&number<100)
{
response.setContentType("application/msword;charset=GB2312");
out.println(number+"的立方:"+(number*number*number));
}
else
{ response.setStatus(404);
}
}
catch(Exception e)
{
response.sendRedirect("input.jsp");
}
%>
3. JSP页面参考代码
inputGuess.jsp
<%@ page contentType="text/html;charset=GB2312" %>
随机分给了你一个1到100之间的数,请猜!
<%
int number=(int)(Math.random()*100)+1;
session.setAttribute("count",new Integer(0));
session.setAttribute("save",new Integer(number));
%>
result.jsp
<% String str=request.getParameter("boy");
if(str.length()==0)
{
response.sendRedirect("inputGuess.jsp");
}
int guessNumber=-1;
try
{
guessNumber=Integer.parseInt(str);
Integer integer=(Integer)session.getAttribute("save");
int realnumber=integer.intValue();
if(guessNumber==realnumber)
{
int n=((Integer)session.getAttribute("count")).intValue();
n=n+1;
session.setAttribute("count",new Integer(n));
response.sendRedirect("success.jsp");
}
else if(guessNumber>realnumber)
{
int n=((Integer)session.getAttribute("count")).intValue();
n=n+1;
session.setAttribute("count",new Integer(n));
response.sendRedirect("large.jsp");
}
else if(guessNumber { int n=((Integer)session.getAttribute("count")).intValue(); n=n+1; session.setAttribute("count",new Integer(n)); response.sendRedirect("small.jsp"); } } catch(Exception e) { response.sendRedirect("inputGuess.jsp"); } %> <%@ page contentType="text/html;charset=GB2312" %>
large.jsp
<%@ page contentType="text/html;charset=GB2312" %>
success.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%
int count=((Integer)session.getAttribute("count")).intValue();
int num=((Integer)session.getAttribute("save")).intValue(); %>
恭喜你,猜对了
您共猜了<%=count%>次,这个数字就是<%=num%>。
单击超链接返回到inputGuess.jsp页面:
长春大学 20 15 —2016学年第二学期Web前端开发技术课程 实验报告 学院:计算机科学技术专业:软件工程 班级:软件15402
学号:041440210 姓名:王悦 任课教师:车娜 实验三 CSS网页布局 一、实验目的 1.掌握CSS盒子模型的概念,能够灵活运用盒子模型布局页面; 2.掌握盒子模型相关属性,能够使用它们熟练地控制网页元素; 3.理解块元素与行内元素的区别,能够对它们进行转换。 二、内容及要求 运用盒子模型的相关属性实现网页弹出框效果,满足如下要求: 1.网页弹出框由上面的标题和下面的宣传内容两部分组成; 2.标题通过h2定义; 3.在段落文本中内容部分由h3和p标记进行定义; 4.应用
实验一JSP开发环境构建 实验目的:了解动态页面技术及B/S系统 掌握开发环境的构建 理解Eclipse开发WEB应用 实验内容: 实训项目一:安装JDK并配置环境变量 请阐述配置环境变量的方法: 实训项目二:安装TOMCAT并配置Server.xml修改端口号为8090 问题一:如何测试TOMCAT是否已经成功启动? 问题二:在浏览器地址栏输入什么地址可以访问到TOMCA T的测试页? 请阐述配置Server.xml修改端口号为8090基本实验步骤: 实训项目三:应用Eclipse建立项目并浏览一个JSP页面 请阐述应用Eclipse建立项目并浏览一个JSP页面基本实验步骤: 实验心得:(遇到了哪些问题,如何解决的,有那些体会) 实验二JSP语法 实验目的:了解JSP程序的组成元素 掌握JSP中使用JA V A程序片段的方法 实验内容: 实训项目一:编写一个JSP页面输出26个小写英文字母表 实训项目二:编写页面实现九九乘法表 实训项目三:利用成员变量被所有客户共享这一性质,实现一个简单的计数器 实训项目四:使用JA V A表达式输出系统当前时间 实训项目五:编写程序shijian2_9.jsp和computer.jsp两个页面,在第一个页面中使用include动作标记动态包含文件computer.jsp,并向它传递一个矩形的长和宽,computer.jsp 收到参数后,计算矩形的面积,并显示结果。 实训项目六:编写3个JSP页面:main.jsp,first.jsp和second.jsp,将3个JSP文件保存在同一个WEB工程中,main.jsp使用include动作标记加载first.jsp和second.jsp页面。First.jsp 页面可以画一张表格,second.jsp页面可以计算两个正整数的最大公约数。当first.jsp被加载时,获取main.jsp页面include动作标记的param子标记提供的表格行数和列数,当second.jsp 被加载时,获取main.jsp页面include动作标记的param子标记提供的两个正整数的值。 要求:上机编程完成上述实训项目,上机演示给教师检查,从中挑选三个程序的核心代码写在实训报告上 实验核心代码:
WEB和FTP服务的配置与测试 一.实验目的: 1.掌握在Win 2000下WEB服务器的建立、配置和测试。 2.掌握FTP服务的配置如端口、用户设置等以及如何应用FTP服务。 二.实验内容 (1)安装IIS。 (2)配置和管理windows2000 的WWW服务器:设置Web站点;Web站点的管理。(3)配置和管理FTP服务器。 三.实验设备 装有虚拟机的计算机。 四.实验步骤 网络拓朴: 一、IIS的安装 默认情况下,在Windows 2000 Server安装过程中会自动安装IIS,若没有安装,则需安装。 1、在“控制面板”中选择“添加/删除程序”,单击“添加/删除Windows组件”;选中“Internet信息服务(IIS)”的“详细信息”清单;如下图
2、配置IIS的组件,在“Internet信息服务(IIS)”对话框中点击“Internet 服务管理器”及“公用文件”(必选);若你的服务器作为WWW或FTP服务器,则分别选中“World Wide Web服务器”和“文件传输协议(FTP)服务器”。 注意:对于不需要的服务,最好不要安装,这是安全的做法。 然后单击“确定”、“下一步”,开始IIS系统文件的安装。 二、WEB站点管理 1、单个网站的WEB服务器的配置 先配置WEB服务器前,请先用记事本或Microsoft WORD制作一个简单的网页,放在一个新建的文件夹(如:d:\aa文件夹)中,命名为网页文件(如1.htm)。然后在IIS中发布这个简单的网站: 依次单击“开始”-“程序”-“管理工具”-“Internet服务管理器”,打开Internet信息服务窗口。如图所示。
复习资料 选择题 HTTP哪个请求方式,请求参数会出现在网址列上? (A) GET (B)POST Web容器在收到浏览器请求时,会如何处理请求? (A)使用单一执行绪处理所有请求 (B)一个请求就建立一个执行绪来处理请求 (C)一个请求就建立一个行程来处理请求 (D)一个请求就执行一个容器来处理请求 Java EE中各技术标准最后将由什么文件明订规范? (A) JCP (B)JSR(C)JDK 在JSP中,要定义一个方法,需要用到以下()写法。 A. <%= %> B. <% %> C. <%! %> D. <%@ %> 在J2EE中,在web.xml中,有如下代码:
上述代码定义了默认的会话超时时长,时长为30()。 A. 毫秒 B. 秒 C. 分钟 D. 小时 JavaWeb 中()类的()方法用于创建对话。 A. HttpServletRequest、getSession B. HttpServletResponse、newSession C. HtttpSession、newInstance D. HttpSession、getSession 给定一个Servlet 的doGet方法中的代码片段,如下: request.setAttribute(“name”,”zhang”); response.sendRedirect(“http://localhost:8080/servlet/MyServlt”); 那么在Servlet 中可以使用()方法把属性name的值取出来。 A. String str=request.getAttribute(“name”); B. String str=(String)request.getAttribute(“name”); C. Object str=request.getAttribute(“name”); D. 无法取出来 下边哪个不是JSP的内置对象?()
北京联合大学信息学院《WEB技术》实训报告题目:IT企业实践服务系统 专业:软件工程 班级: 学号: 姓名: 小组成员: 2013年01月01日
摘要 在计算机技术快速发展的今天,internet网络这个现代信息高速公路也流行发展起来,已经成为人们生活、工作、学习越来越离不开的平台。基于.NET技术的应用大量出现。为了让用户浏览到美观的,个性化的页面和丰富的内容。因此,基于B/S体系架构创建的这个学籍管理系统,紧跟行业发展,满足各大高校学习、管理的需要。由于各大高校在进行学籍管理时,需要管理大量的学生信息、教师信息以及课程信息等。传统的手动操作方式易发生数据丢失和统计错误,劳动强度大,且速度慢。在计算机上可以高速、快捷地完成这些工作。计算机联网后,数据在网上传递可以实现数据共享,避免重复劳动,规范教学管理行为,从而可提高管理效率和水平。 关键词:internet网络B/S体系架构学籍管理 第一章系统概述 1.1引言 建立一个基于B/S架构的学籍管理系统,实现信息网络化。通过较丰富的功能将.NET技术特点体现出来。该系统可供包括管理员登录和学生登录使用。登录者可以查询信息或者发布信息。系统中管理员模块为必不可少的模块项,该模块主要包括3个模块:管理员模块、学生模块、公用模块。为了安全有效地存储和管理登录网站的用户的信息,赋予管理员特定的权限,可以对用户进行添加,删除,修改和学生的查询等。方便网站的管理与维护。 要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了SQL Server 2005作为后台数据库,结合SQL语句处理对用户添加,删除,修改等操作,使.NET 与数据库紧密联系起来。 1.2背景 1.2.1 B/S结构相关开发技术简介 从Web数据库的发展过程来看,实现B/S结构下Web数据库的应用通常有两种方法:一种是Web服务器端提供中间件连接Web服务器和数据库服务器;一种是把应用程序下载到客户端直接访问数据库。其中第二种方法在程序的编写、调试上显得较为繁琐,网络安全也较难保证。在第一种方法中较常用的中间件技术有通用网关接口(CGI)和应用程序编程接口(API)两种,而API有两种版本,ISAPI和NSAPI。CGI的最大不足在于对每个访问都会在服务器端产生一个应用程序副本,占用系统资源。API以动态连接库的形式出现虽然克服了CGI的这一缺点,却带来了另一个问题,即当需要修改或更新服务程序时必须重起系统,而这在许多事实性较强的应用服务器上是不允许的。同时,无论是CGI还是API它们共同的缺点是程序和HTML
西安财经学院试题(卷)纸命题教师刘通学期2012 —2013学年第1 学期使用班级计本10级考核方式大作业 课程名称Web系统与技术阅卷教师签名 题号一二三四五六七八 九 十总分得分 注意事项: 命题教师1.出题用五号字、宋体输入,打印用正规A4纸张。 2.装订线以外的各项均由命题教师填写,不得漏填。 考生1.装订线内的“班级”、“学号”、“姓名”、“时间”等栏由考生本人填写。 2.一律用黑色的签字笔答题,否则试卷无效。 动态网站设计(100分) 一.基本要求及总体效果(40分): 1.设计一个基于web的管理信息系统,网站内容自定,可以是企业人事管理系统、学生管理系统、课程管理系统、教务管理系统、图书管理系统、客户管理系统、超市商品管理系统、库存管理系统、汽车租赁系统、网上商店等等、也可以自拟题目,内容不限,但要求是基于web的信息管理系统,主题思想明确、结构清晰、形式新颖、内容充实、浏览方便、网页文字及相关链接无错误。(10分) 2.网页整体设计思路清晰,网页布局合理,风格明快。主题页和其它各子页之间协调,主题分明、重点突出。栏目及版面设计,层次结构及链接结构明确。内容布局合理,图画运用得当,效果生动。(20分) 3.网页上各主题和附加图片、背景的色彩选配方案要注意做到:色彩柔和、搭配美观,朴素大方,不应过分夸张,使视觉疲劳。(10分)。 二、具体功能模块内容要求:(60分) 1.用户登录模块 输入的用户名和密码都正确,才能登录,否则给出错误提示,重新登录。(5分) 2.用户注册模块。 输入的信息要有有效性验证,还可以根据实际情况设置所需注册信息内容,注册成功后可用该账号登录网站。(10分) 3.用户留言模块 来访用户能够在空间留言,管理员或其他登录用户可以回复留言,用户的留言能够在网站中显示出来。(10分) 4.导航清晰,网站内各页面可以方便地相互跳转。 5.其他具体内容自己根据实际情况设计。要求内容新颖、有创意,能够完整地实现系统的主要功能,系统运行正常。(5分) 提交要求: 1.每人独立一题,独立完成,不得盗用他人作品,设计雷同者成绩均按零分计。 2.请做完之后,用RAR或ZIP压缩格式,文件名采用如下格式:班级+姓名+学号。(计本1001班的01张三,则文件名为计本1001张三01)3.站点名称建议用英文或者数字,所有设计到的文件最好用英文或数字命名,把主页放在站点文件夹的根目录下,保存为index.htm或default.aspx 第一题 得 分 1
web前端设计与开发实验 实验须知: 1.本实验课程一共有6个实验,围绕“个人主页”的主题,(1)使用Axure制作网站 的页面原型;(2)使用HTML标签设计页面的结构;(3)使用CSS控制页面的表现;(4)使用JavaScript脚本实现网页的交互效果;(5)并使用PhotoShop完善网站的视觉设计(6)最终呈现一个完整的“个人主页”网站。 2.网站推荐使用“一页式”的“响应式设计”,但这不是必须的。 3.网站如果采用“一页式”设计,则必须有三屏内容;如果是多网页设计,则必须有 三个页面,包括首页。 实验1:网站页面原型设计 实验目的: 1.掌握Axure工具的使用; 2.领会网站设计的思想; 3.理解页面原型的作用。 实验要求: 1.网站主题:“个人主页”或“个人求职主页”; 2.网站推荐使用“一页式”的“响应式设计”,但这不是必须的; 3.网站如果采用“一页式”设计,则必须有三屏内容;如果是多网页设计,则必须有 三个页面,包括首页在内; 4.要求设计出网页的基本结构,并有一定的交互效果; 5.尽可能设计出高保真型原型。 实验2:网站页面HTML设计与实现 实验目的: 1.掌握HTML标签的使用; 2.理解HTML标签的语义; 3.合理使用HTML标签结构化页面元素。 实验要求: 1.要求使用HTML语言将实验一设计的网页原型实现; 2.要求语义化使用HTML标签,合理地结构化页面元素及内容; 3.要求可适当分析页面布局,加入控制布局的标签; 4.要求设计一个合适的前端框架,即能分类存放不同的文档。 实验3:使用DIV+CSS布局并美化网页 实验目的: 1.掌握CSS基本语法;
“JSP内置对象”单元习题 一、填空题 1.JSP 中有9 种内置对象,它们分别是:___________、___________、response 对象、 pageContext 对象、 session对、 applicationt 对象、page 对象、 config 对象和 exception 对象。 2.Request对象可以使用___________方法获取表单提交的信息。 3.客户端向服务器端提交数据的方式通常有两种:一种是___________提交方式;另一种是 ___________提交方式。 4.在JSP 内置对象中,与请求相关的对象是______________________。 5.___________被封装成接口,它用来向客户端输出内容。 6.Out 对象中用来输出各种类型数据并换行的方法是______________________。7.Out 对象中用来输出各种类型数据但不换行的方法是 ______________________。 8.Out 对象中用来输出一个换行符的方法是______________________。 9.Out 对象中用来关闭输出流的方法是______________________。 10.Out 对象中用来输出缓冲区里的数据的方法是______________________。11.Out 对象中用来清除缓冲区里的数据,并把数据写到客户端的方法是 ________________。 12.Out 对象中用来清除缓冲区里的数据,但不写到客户端的方法是 ___________________。 13.Out 对象中用来获得缓冲区大小的方法是______________________。14.Out 对象中用来获得缓冲区剩余空间大小的方法是 ______________________。 15.Out 对象中用来判断缓冲区是否自动刷新的方法是 ______________________。 16.Request 对象中用来获得服务器名字的方法是______________________。17.Request 对象中用来获得服务器的端口号的方法是 ______________________。 18.Request 对象中用来获得客户端的 IP 地址的方法是 ______________________。 19.Request 对象中用来获得客户端的计算机名字的方法是 ______________________方法。 20.Request 对象中用来获得客户端向服务器端传送数据的协议名称的方法是__________________。 21.___________是同应答相关的 HttpServletResponse类的一个对象,它封装了服务器对客户端的响应,然后被送到客户端以响应客户请求。22.Response对象中用来动态改变 contentType属性的方法是 ______________________。 23 . Response 对象中用来把响应发送到另一个指定的位置进行处理的方法是______________________。
必做实验 实验一Web服务开发环境配置(2课时) 一、实验目的 1.学习理解web服务的概念。 2.掌握Web服务开发环境的配置。 3.熟悉Web服务开发工具的使用。 二、实验内容 1.安装配置Eclipse; 2.安装配置Axis2; 3.为Eclipse安装配置Axis2插件; 4.查阅帮助文档,熟悉开发环境。 三、实验仪器、设备 PC机最低配置:2G Hz以上CPU;1G以上内存;1G自由硬盘空间 四、实验原理 1.Eclipse平台 Eclipse是一个开放源代码的、基于Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。基于Eclipse的应用程序的突出例子是IBM的WebSphere Studio Workbench,它构成了IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer添加了对JSP、servlet、EJB、XML、Web服务和数据库访问的支持。 2.Axis2 是下一代Apache Axis。Axis2虽然由Axis 1.x处理程序模型提供支持,但它具有更强的灵活性并可扩展到新的体系结构。Axis2基于新的体系结构进行了全新编写,而且没有采用Axis 1.x的常用代码。支持开发Axis2的动力是探寻模块化更强、灵活性更高和更有效的体系结构,这种体系结构可以很容易地插入到其他相关Web服务标准和协议(如WS-Security、WS-ReliableMessaging 等)的实现中。
Axis2的主要优点有 1)采用名为AXIOM(AXIs Object Model)的新核心XML处理模型,利用新的XML 解析器提供的灵活性按需构造对象模型。 2)支持不同的消息交换模式。目前Axis2支持三种模式:In-Only、Robust-In和In-Out。In-Only消息交换模式只有SOAP请求,而不需要应答;Robust-In消息交换模式发送SOAP 请求,只有在出错的情况下才返回应答;In-Out消息交换模式总是存在SOAP请求和应答。 3)提供阻塞和非阻塞客户端API。 4)支持内置的Web服务寻址(WS-Addressing)。 5)灵活的数据绑定,可以选择直接使用AXIOM,使用与原来的Axis相似的简单数据绑定方法,或使用XMLBeans、JiBX或JAXB 2.0等专用数据绑定框架。 6)新的部署模型,支持热部署。 7)支持HTTP,SMTP,JMS,TCP传输协议。 8)支持REST (Representational State Transfer)。 五、实验步骤(略) 见《Developing Web Services with Apache Axis2》P10-P26 六、实验思考题 1.什么是Web服务? 2.Web服务开发环境主要有哪些? 3.请查阅各Web服务开发环境的性能。
实验六Web测试 实验类别:综合实验 实验目的: 应用Web测试工具对Web系统进行功能和性能测试; 背景知识: 对Web系统测试需要从功能、性能、可用性、安全性等多方面进行测试。 一、功能测试 对Web系统进行功能测试包括以下几个方面: 1. 链接测试 链接是Web 应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web 应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面。 2. 表单测试 当用户给Web 应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。 3. Cookies测试 Cookies通常用来存储用户信息和用户在应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web 服务器将发送关于用户的信息,把该信息以Cookies 的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。 如果Web 应用系统使用了Cookies ,就必须检查Cookies 是否能正常工作。测试的内容可包括Cookies 是否起作用,是否按预定的时间进行保存,刷
计 算 机 网 络 实 验 课程题目:姓名:学号:指导老师:
目录 一、实验目的 (1) 二、实验内容 (1) 三、实验过程: (1) (1)web服务器的搭建: (1) (2)制作一个主题网站 (5) 四、实验总结 (8)
一、实验目的 1、掌握web服务器的配置方法; 2、掌握IIS及相关组件的安装; 3、掌握网站建立的方法; 二、实验内容 1、按照实验要求搭建web服务器、具体包括服务器的安装和配置; 2、根据不同的windows系统安装IIS6(本机是win7系统安装的是IIS7); 3、用Macromedia Dreamweaver 8制作一个基于磁盘的网站; 三、实验过程: 1、web服务器的搭建: 安装IIS7 (1)首先点击电脑开始按钮—控制面板—点击“程序”,如图1-1 图1-1
(2)在程序和功能下面,点击“打开和关闭windows功能”,如下图1-2 图1-2 (3)找到internet信息服务选项,然后需要的选项前面打勾;如下图1-3 图1-3
(4)然后点击确认,进入系统安装设置,需要等待进度条结束,如图1-4 图1-4 (5)安装成功后,页面会消失,直接回到控制面板选择“类别”里的大图标,如下图1-5 图1-5 (6)选择管理工具,如下图1-6 图1-6
(7)进入管理工具窗口,点击Internet信息服务(IIS)管理器,如下图1-7 图1-7 (8)双击Internet信息服务(IIS)管理器,进入到管理窗口,如下图1-8 图1-8 (9)点击右边的浏览*:80(http),如下图1-9
《Web 软件技术》课程 实验报告 华东理工大学信息学院计算机系 2017年03月03日题目 HTTP 请求对及数据处理 专业 信息工程 班级 信工143 学号 姓名 王钊健 指导教师签名 范贵生
实验二 HTTP请求对及数据处理 姓名王钊健学号专业班级信工143 成绩_________ 实验日期 2017/3/2 实验地点信息大楼 215 指导教师(签名) 一.实验目的 1. 掌握如何获得请求参数; 2. 掌握如何检索请求头; 3. 了解如何通过请求对象获得客户信息; 4. 重点掌握使用请求对象存储数据和请求转发。 二.实验工具与设备 三.实验内容 (一)通过查询串传递请求参数,并在Servlet中检索请求参数 【步骤1】编写下面的Servlet。 import .*; import .*; public class HelloUserServlet extends HttpServlet{ public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{ String userName = ("userName"); PrintWriter pw = (); (""); ("
"); (""); (""); ("【步骤2】使用下面的URL访问之。 :8080/helloapp/hellouser userName=John 将userName的值改为你自己的名字,看输出结果。若不给出查询字符串,结果如何参数值使用汉字如何 (二)通过表单传递请求参数,使用HttpServletRequest对象获得请求参数【步骤1】首先编写一个文件,存放在helloapp目录中。该页面在屏幕上显示一个表单,其中包括姓名和年龄域,点击“确定”按钮后,将表单参数传递给ParamServlet并显示出来。 代码如下:
实验八Web组件重用与JavaBeans 班级:网络112 学号:201106090213 姓名:李亚军 一、实验目的 1. 理解静态包含和动态包含的概念,掌握相关指令和动作的使用; 2. 掌握JavaBeans的含义和创建; 3. 重点掌握在JSP页面中使用JavaBeans的标准动作。 二、实验原理 通过重用Web组件可以提高应用程序开发的效率和其可维护性。在JSP中可以通过包含机制和JavaBean实现Web组件的重用。 包含分为静态包含和动态包含。静态包含通过include指令实现,动态包含通过标准动作jsp:include实现。 在JSP页面中使用JavaBean是最重要的组件重用技术,这主要是通过下面3个标准动作实现的:
实验十一Servlet过滤器的使用 班级:网络112 姓名:蒋丽学号:0202 一、实验目的 1. 了解过滤器的作用; 2. 掌握过滤器的开发与部署的步骤; 3. 了解过滤器链。 二、实验原理 过滤器是web服务器上的组件,它们对客户和资源之间的请求和响应进行过滤。 过滤器的工作原理是:当servlet容器接收到对某个资源的请求,它要检查是否有过滤器与之关联。如果有过滤器与该资源关联,servlet容器将把该请求发送给过滤器。在过滤器处理完请求后,它将做下面3件事: ?产生响应并将其返回给客户; ?如果有过滤器链,它将把(修改过或没有修改过)请求传递给下一个过滤器; ?将请求传递给不同的资源。 当请求返回到客户时,它是以相反的方向经过同一组过滤器返回。过滤器链中的每个过滤器可能修改响应。 过滤器API主要包括:Filter、FilterConfig和FilterChain接口。 三、实验内容与步骤 (一)在实验十一创建的chap11项目下,编写一个过滤器AuditFilter,审计用户对资源的访问。 【步骤1】该过滤器实现的功能是,当用户访问应用程序任何资源时,将用户的IP地址和主机名写入日志文件中,过滤器代码如下: package filter; import ; import javax.servlet.*; import ; public class AuditFilter implements Filter { protected FilterConfig config; public void init(FilterConfig filterConfig) throws ServletException { this.config = filterConfig; } public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest)request; HttpServletResponse res = (HttpServletResponse)response; String addr = req.getRemoteAddr(); String user = req.getRemoteHost(); config.getServletContext().log("RemoteAddress:"+addr+ ",RemoteHost:"+user); chain.doFilter(req, res); } public void destroy() { }
本科实验报告 课程名称:Web开发实用技术基础 实验项目:HTML语言 网页程序设计Javascript Request与Response对象的应用 Application与Session对象的应用 实验地点:实验室211 专业班级:学号: 学生姓名: 指导教师: 2015年11月5日
学院名称学号实验成绩 学生姓名专业班级实验日期 课程名称Web开发实用技术基础实验题目HTML语言 一.实验目的和要求 1.掌握常用的HTML语言标记; 2.利用文本编辑器建立HTML文档,制作简单网页。 3.独立完成实验。 4.书写实验报告书。 二.实验内容 1.在文本编辑器“记事本”中输入如下的HTML代码程序,以文件名sy1.html保存,并在浏览器中运行。(请仔细阅读下列程序语句,理解每条语句的作用) 源程序清单如下:
item | content |
---|