JSP实验3 request对象、session对象
- 格式:pdf
- 大小:404.12 KB
- 文档页数:10
浅谈page,request,session,application四种范围JaveWeb四种主要的范围:1.page: page表⽰页⾯范围。
页⾯范围对应的时间段为:从客户访问⼀个jsp⽂件开始,到这个jsp⽂件执⾏结束。
2.request: request表⽰请求范围。
请求范围时间段为:从客户请求访问⼀个jsp⽂件开始,到这个jsp返回响应结果结束,如果这个jsp⽂件把请求转发给其他web组件,那么知道其他web组件返回响应结果结束。
请求范围是指服务器响应⼀次客户请求的过程,从servlet容器接收到⼀个客户请求开始,到返回响应结果结束, 请求范围与servletRequest和servletResponse相对应。
3.session: session表⽰会话范围。
会话范围对应着整个会话的⽣存周期。
会话范围是指浏览器与⼀个web应⽤进⾏⼀次会话的过程。
具体实现上,会话范围与httpsession对象的⽣命周期相对应。
因此web组件只要共享同⼀个httpsession对象也就能共享会话范围内的数据。
举例说明: 浏览器进程第⼀次请求访问应⽤中⼀个⽀持会话的⽹页,servlet容器驶⼊寻找请求中表⽰sessionID的cookie,由于还不存在这样的cookie,所以⼀个新的会话开始了,创建⼀个httpsession的对象,然后为它分配唯⼀的sessionID,并把id作为Cookie 放在http响应结果中,当浏览器接收到http响应后,会把sessionID保存的cookie保存在客户端。
浏览器进程继续访问应⽤的任意⼀个⽀持会哈德页⾯,http请求会包含表⽰sessionID的Cookie,servlet容器试图寻找http请求中sessionID的cookie,找到后可以找到与sessionID匹配的httpSession。
4.application(应⽤)范围: web应⽤范围对应整个web应⽤的⽣存周期。
中南民族大学管理学院学生实验报告课程名称: JSP程序设计年级: 2010专业:姓名:学号:指导教师:实验地点:管理学院综合实验室学年至学年度第学期第一章 JSP简介实验 Tomcat服务器的安装与配置一、实验目的本实验的目的是让学生掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP 页面、怎样修改Tomcat服务器的端口号。
二、实验要求1、将下载的apache-tomcat-6.0.13.zip解压到硬盘某个分区,比如D。
2、在硬盘分区D下新建一个目录,名字为student,见stuent设置为Web服务目录,并为该Web服务目录指定名字为good的虚拟目录。
3、修改端口号为5678.在server.xml文件中找到修改端口号的部分,将端口号修改为5678.4、启动Tomcat服务器。
5、用文本编辑器编写一个简单的JSP页面biao.jsp,并保存到Web服务目录student中。
6、用浏览器访问Web服务目录student中的jsp页面biao.jsp。
三、实验内容1、Tomcat安装成功并运行2、编码实现乘法表3.代码四、实验结果biao.jsp页面五、实验结果分析1、默认的端口号为8080,若修改,在conf目录下的server.xml文件中修改端口号。
2、设置虚拟目录。
在conf目录下的server.xml中</Host>前加入:<Context path=”/**” docBase=”路径” debug=”0” reloadable=”true/”>3、Tomcat服务器必须保持启动。
第二章 JSP页面与JSP标记实验1 JSP页面的基本结构一、实验目的本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序片、Java表达式。
二、实验要求本实验将用户输入的单词按字典顺序。
需要编写两个JSP页面,名字分别为inputWord.jsp和showDictionary.jsp。
JSP程序设计实验报告JSP程序设计实验报告1、实验目的1.1 将Java代码与页面相结合,实现动态网页的开发 1.2 学习和掌握JSP程序设计的基本原理与技巧1.3 掌握使用JSP实现数据库操作的方法2、实验环境2.1 操作系统:Windows 102.2 开发工具:Eclipse IDE2.3 服务器:Apache Tomcat2.4 数据库:MySQL3、实验内容3.1 搭建JSP开发环境3.1.1 安装Eclipse IDE3.1.2 配置Apache Tomcat服务器3.1.3 连接Eclipse与Tomcat服务器3.2 创建JSP页面3.2.1 新建一个JSP文件 3.2.2 编写标签和JSP代码 3.2.3 展示动态数据3.3 JSP基本语法3.3.1 声明标签3.3.2 表达式标签3.3.3 脚本标签3.3.4 注释标签3.3.5 动作标签3.4 JSP中的控制语句3.4.1 条件判断语句3.4.2 循环语句3.4.3 转向语句3.5 JSP中的对象与方法3.5.1 request对象3.5.2 response对象3.5.3 session对象3.5.4 JSP表单处理3.6 JSP与数据库交互3.6.1 连接数据库3.6.2 执行SQL语句3.6.3 处理数据库返回结果4、实验步骤4.1 搭建JSP开发环境4.1.1 并安装Eclipse IDE4.1.2 并配置Apache Tomcat服务器4.1.3 在Eclipse中连接Tomcat服务器4.2 创建JSP页面4.2.1 在Eclipse中创建新的JSP文件4.2.2 编写JSP页面的标签和JSP代码4.2.3 保存并运行JSP页面4.3 学习和练习JSP基本语法和控制语句4.3.1 编写JSP页面,使用各种JSP标签和控制语句4.3.2 运行JSP页面,查看结果4.4 实现JSP与数据库的交互4.4.1 创建一个数据库,并设计相应的表4.4.2 连接数据库,执行SQL语句4.4.3 在JSP页面中展示数据库查询结果5、实验结果分析在本次实验中,我们成功搭建了JSP开发环境,并创建了多个JSP页面。
软件工程系《JSP应用技术》实验指导书专业班级:软件11-1、2指导教师:朱亚玲实验一 JSP开发环境的搭建一、实验目的1.熟练掌握Tomcat服务器的安装与配置,为后续实验做好准备工作;2.掌握Web服务目录的设置;3.熟练掌握Web服务目录下JSP页面的访问;4.掌握Tomcat服务器端口号的修改。
二、实验环境与地点PC机一台:JDK6.0+Tomcat6.0+编辑器三、实验内容与步骤1.Tomcat服务器的安装与配置;(1)下载jdk6.0进行安装,同时配置系统变量PATH与CLASSPATH。
(2)下载Tomcat6.0,将其安装到硬盘的某个分区,如D:\。
2.Web服务目录的设置;(1)在D:\下新建一个目录,名称为student,将student目录设置为Web服务目录,并为该Web 服务目录指定名字为friend的虚拟目录。
打开Tomcat目录中conf文件夹里的文件,找到出现</Host>的部分。
然后在</Host>的前面加入:<Context path=" " docBase=" " debug=0 reloadable="true" /> (2)修改端口号为9999。
在文件中找到修改端口号部分,默认端口修改为9999。
(3)启动Tomcat服务器。
如果已经启动,应该,并重新启动。
3.JSP页面的访问;(1)使用“记事本”编写一个简单的JSP页面,文件名用自己的姓名拼音命名(如张三:zhangSan.jsp),文件名是,并保存到Web服务目录student中。
(2)打开上一步建立的JSP页面进行编辑,使其页面运行起来时显示你的专业、班级、学号,姓名。
(3)在浏览器的地址栏中输入Tomcat服务器的IP地址和端口号,并通过虚拟目录friend访问Web服务目录student中第2步编辑后的JSP页面,访问路径是:。
实验3-2session对象1.相关知识点HTTP协议是一种无状态协议。
一个客户向服务器发出请求(request),然后服务器返回响应(response),连接就被关闭了。
所以,Tomcat服务器必须使用内置session对象(会话)记录有关连接的信息。
同一个客户在某个Web服务目录中的session是相同的;同一个客户在不同的Web服务目录中的session是互不相同的;不同用户的session是互不相同的。
一个用户在某个web服务目录的session对象的生存期限依赖于客户是否关闭浏览器、依赖于session对象是否调用invalidate()方法使得session无效或session对象达到了设置的最长的“发呆”时间。
2.实验目的本实验的目的是让学生掌握怎样使用session对象存储和用户有关的数据。
3.实验要求本实验编写3个JSP页面login.jsp,show.jsp和exit.jsp。
login.jsp页面提供一个表单,用户可以通过表单输入姓名提供给login.jsp页面,该页面将用户的姓名存放到用户的session(会话)中。
如果用户链接到show.jsp页面,该页面将检查用户的session 中是否存放了姓名,否则就将用户重新定向到login页面;如果用户链接到exit.jsp页面,exit.jsp将销毁用户的session。
●login.jsp的具体要求login.jsp页面提供一个表单,要求表单中提供一个text输入框,供用户输入名字提交给当前页面,login,jsp页面将用户输入的名字存放到用户的session(会话)中。
●show.jsp的具体要求要求show.jsp页面可以显示一幅图像。
但前提条件是,用户事先必须在session中存放有名字,否则无法看到图像,而且还会被重新定向到login.jsp页面。
●exit.jsp的具体要求用户一旦访问exit.jsp页面,用户的session的对象将被销毁,用户必须重新访问其他的页面获得新的session。
第三章:Jsp隐式对象(request对象、response对象session对象、application对象、cookie)Jsp隐式对象概述:由JSP规范提供,不用编写者实例化。
通过Web容器实现和管理。
所有JSP页面均可使用。
只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>)。
常用九大内置对象的作用和方法1、out对象:代表提供输出流的访问。
2、request对象:request对象是从客户端向服务器端发出请求,包括用户提交的信息以及客户端的一些信息。
常用方法:getparameter()getParameterValues()setAttribute() getAttribute()3、response对象:允许直接访问HttpServletResponse对象常用方法:sendRedirect()4、session对象:允许直接访问HttpServletResponse对象常用方法:setAttribute()、getAttribute()5、application对象:用于多个程序或者多个用户之间共享数据。
常用方法:setAttribute()、getAttribute()6、config :将初始化数据传递给一个JSP页面7、page :代表JSP页面对应的Servlet类实例8、exception:针对错误网页,未捕捉的例外9、pageContext :管理网页的属性内置对象的作用域:◆application:服务器启动到停止这段时间◆session:HTTP会话开始到结束这段时间◆request:HTTP请求开始到结束这段时间◆page:当前页面从打开到关闭这段时间对于每一个用户都共享同一个对象的是:application对象,而每个用户分别使用不同对象实例的是:session对象forword和sendRedirect的区别:forword仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;sendRedirect则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接getParameter(String name);例题一:文件名:input.html<html>< body bgcolor="white"><font size=1><form action="requestdemo1.jsp" method=post name=form><input type="text" name="boy"><input type="submit" value="Enter" name="submit"></form></font></body></html>文件名:requestDemo1.jsp:<%@ page contentType="text/html;charset=GB2312" %><html><body bgcolor="white"><font size=4><p>获取文本框提交的信息:<%String strContent=request.getParameter("boy");%><%=strContent%> // 输出文本框boy提交的信息<p> 获取按钮的名字:<%String strButtonName=request.getParameter("submit");%><%=strButtonName%> // 输出按钮的value名字</font></body></html>例题二:设计一个简单的“JSP程序设计网上测试系统”,如下图所示。
实验一JSP运行环境安装与配置实验时间:3月7日实验目的:1、掌握JSP运行环境的安装与配置。
2、熟悉Tomcat服务器的安装与配置。
3、掌握JSP文件的建立与使用。
4、熟悉JSP开发环境实验内容:1、安装J2SDK并设置相关环境变量。
2、安装与启动Tomcat服务器3、设置Web服务目录4、编写测试JSP页面实验步骤(过程):参照教材实验二JSP页面实验时间:3月21日实验目的:1、掌握JSP页面的基本结构及运行原理。
2、掌握怎样声明JSP页面的成员变量和方法3、掌握怎样使用Java程序片和Java表达式。
4、掌握在JSP页面中使用HTML标记。
实验内容:1、编写一个JSP页面,计算出100以内的素数。
2、设计两个JSP页面a.jsp和b.jsp,a.jsp页面使用表单提交数据给b.jsp页面,要求a.jsp通过text方式提交一个字符串给b.jsp,b.jsp页面获取a.jsp提交的字符串,并使用Java表达式显示这个字符串及其长度。
3、请编写JSP页面inputNumber.jsp和getNumber.jsp。
inputNumber.jsp页面使用表单通过text方式提交一个数字给getNumber.jsp页面,getNumber.jsp计算并显示这个数的平方和立方。
实验过程:实验题目1:<%@ page contentType="text/html;charset=GB2312" %><HTML><BODY bgcolor=yellow><P> 100以内的素数有:<BR>int i,j;for( i=1;i<=100;i++){ for( j=2;j<i;j++){ if(i%j==0)break;}if(j==i)out.println("<BR>素数:"+i);}%></BODY> </HTML>实验题目二:a.jsp<%@ page contentType="text/html;Charset=GB2312" %><HTML><BODY bgcolor=cyan><Font size=3><FORM action="b.jsp" method=post name=form><BR>请输入一个字符串:<INPUT type="text" name="name" ></BR><INPUT TYPE="submit" value="提交" name="submit"> </FORM></FONT></BODY></HTML>b.jsp<%@ page contentType="text/html;Charset=GB2312" %><HTML><BODY bgcolor=cyan><Font size=3><% String str=request.getParameter("name");%><P> 您输入的字符串是:<%=str %><P> 字符串的长度为:<%=str.length() %></FONT></BODY></HTML>实验题目3:inputNumber.jsp<%@ page contentType="text/html;Charset=GB2312" %><HTML><BODY bgcolor=cyan><Font size=3><FORM action="getNumber.jsp" method=post name=form><BR>请输入一个数字:<INPUT type="text" name="number" ></BR><INPUT TYPE="submit" value="提交" name="submit"> </FORM></FONT></BODY></HTML>getNumber.jsp<%@ page contentType="text/html;Charset=GB2312" %><HTML><BODY bgcolor=cyan><Font size=3><% String str=request.getParameter("number");double d=Double.parseDouble(str);out.println(d+"的平方为:"+d*d);out.println("<BR>"+d+"的立方为:"+d*d*d);}catch(NumberFormatException exp){out.println("<BR>"+exp);}%></FONT></BODY></HTML>实验三JSP标记实验时间:4月4日实验目的:1、掌握JSP指令标记、动作标记和自定义标记的使用2、掌握Tag文件设计、保存及调用方法。
实验3-1request对象1.相关知识点HTTP通信协议使用户与服务器之间一种请求和响应(request/response)的通信协议。
在JSP中,内置对象request封装了用户请求提交时所提交的信息,那么该对象调用相应的方法可以获取封装的信息,即使用该对象可以获取用户提交的信息。
2.实验目的:本实验的目的是让学生掌握怎样在JSP中使用内置对象request.3.实验要求:编写一个JSP页面input.jsp,该页面提供一个表单,用户可以通过表单输两个数和四则运算符号提供给页面表单。
用户提交表单后,input.jsp将计算任务交给一个JSP页面result.jsp去完成。
◆input.jsp的具体要求input.jsp页面提供一个表单,要求表单中提供两个text输入框,供用户输入数字;提供一个下拉列表,该下拉列表有加、减、乘、除四个选项,供用户选择运算符号。
用户在表单中输入数字、选择运算符号提交给result.jsp页面。
◆result.jsp的具体要求要求result.jsp页面获取input.jsp提交的数据,并计算出相应的结果显示给用户。
4.参考代码input.jsp<%@page language="java"contentType="text/html;charset=gb2312"pageEncoding="utf-8"%><html><body bgcolor=yellow><form action="result.jsp"method=post name=form>输入运算符、选择运算符号:<br><input type=text name="numberOne"size=6><select name="operator"><Option value="+">加<Option value="-">减<Option value="*">乘<Option value="/">除</select><input type=text name="numberTwo"size=6><br><input type="submit"value="提交"name="submit"></form></body></html>result.jsp<%@page language="java"contentType="text/html;charset=gb2312"pageEncoding="utf-8"%><html><body bgcolor=green><%String numberOne=request.getParameter("numberOne");String numberTwo=request.getParameter("numberTwo");String operator=request.getParameter("operator");if(numberOne==null){numberOne="0";}if(numberTwo==null){numberTwo="0";}try{double a=Double.parseDouble(numberOne);double b=Double.parseDouble(numberTwo);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;out.println(a+""+operator+""+b+"="+r); }catch(Exception e){out.println("请输入数字字符!"); }%></body></html>5.结果截图input.jsp页面:验证加法:以55+55为例提交后:验证减法:以110-20为例提交后:验证乘法:以20*20为例提交后:验证除法:以20/10为例提交后:异常处理:提交后:实验3-2session对象1.相关知识点HTTP协议是一种无状态协议。
一个客户向服务器发出请求(request),然后服务器返回响应(response),连接就被关闭了。
所以,Tomcat服务器必须使用内置session对象(会话)记录有关连接的信息。
同一个客户在某个Web服务目录中的session是相同的;同一个客户在不同的Web服务目录中的session是互不相同的;不同用户的session是互不相同的。
一个用户在某个web服务目录的session对象的生存期限依赖于客户是否关闭浏览器、依赖于session对象是否调用invalidate()方法使得session无效或session对象达到了设置的最长的“发呆”时间。
2.实验目的本实验的目的是让学生掌握怎样使用session对象存储和用户有关的数据。
3.实验要求本实验编写3个JSP页面login.jsp,show.jsp和exit.jsp。
login.jsp页面提供一个表单,用户可以通过表单输入姓名提供给login.jsp页面,该页面将用户的姓名存放到用户的session(会话)中。
如果用户链接到show.jsp页面,该页面将检查用户的session 中是否存放了姓名,否则就将用户重新定向到login页面;如果用户链接到exit.jsp页面,exit.jsp将销毁用户的session。
●login.jsp的具体要求login.jsp页面提供一个表单,要求表单中提供一个text输入框,供用户输入名字提交给当前页面,login,jsp页面将用户输入的名字存放到用户的session(会话)中。
●show.jsp的具体要求要求show.jsp页面可以显示一幅图像。
但前提条件是,用户事先必须在session中存放有名字,否则无法看到图像,而且还会被重新定向到login.jsp页面。
●exit.jsp的具体要求用户一旦访问exit.jsp页面,用户的session的对象将被销毁,用户必须重新访问其他的页面获得新的session。
4.参考代码Login.jsp代码:<%@page language="java"contentType="text/html;charset=gb2312" pageEncoding="utf-8"%><head><a href=login.jsp>登录</a><a href=show.jsp>看图</a><a href=exit.jsp>退出</a></head><html><body><form action=""method=post name=form>输入名字就算登录了:<br><input type=text name="name"size=6><br><input type="submit"value="提交"name="submit"></form></body></html><%String name=request.getParameter("name");if(name==null)name="";session.setAttribute("login_name",name);%>show.jsp代码:<%@page language="java"contentType="text/html;charset=gb2312" pageEncoding="utf-8"%><head><a href=login.jsp>登录</a><a href=show.jsp>看图</a><a href=exit.jsp>退出</a></head><html><body><%String name=(String)session.getAttribute("login_name");if(name==null||name.length()==0){response.sendRedirect("login.jsp");}%><img src="C:\Users\E550C\Desktop\文档与其它\19_222949_5.jpg" width=200height=178></img></body></html>其中C:\Users\E550C\Desktop\文档与其它\19_222949_5.jpg是图片路径,可根据需要更改。
附图:exit.jsp代码:<%@page language="java"contentType="text/html;charset=gb2312" pageEncoding="utf-8"%><head><a href=login.jsp>登录</a><a href=show.jsp>看图</a><a href=exit.jsp>退出</a></head><html><body><%session.invalidate();%><b>session会话失败</b></body></html>5.实验结果输入姓名提交提交后:点击看图点击退出Ps:编者语《JSP实用教程(第三版)》耿样义张跃平编著这本书上实验2到实验7,编者都有编辑文档,内容包括实验要求、实验目的、代码甚至必要操作。