《JSP课程08单元 内置对象(2).ppt》由会员分享,可在线阅读,更多相关《JSP课程08单元 内置对象(2).ppt(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第4章 jsp内建对象responsesession结果:网页BOut:输出到html网页Request:获取上个网页参数Response:返回给下个网页结果Jsp程序(产生html代码和网页效果)Jsp的内置对象:后续有session、application等网页A提交直接访问jsp地址Tomcat服务器服务器客户端用户看到的网页客户端用户看到的网页Response对象定义:HTTP“请求/响应”模型的请求消息与request对象对应响应消息由response对象对应,用来对客户的请求作出响应,向客户端发送数据用户可以通过response对象的方法修改响应消息中的各项参数和选项客户端服务器响
2、应请求4.4.1 利用response对象修改contentType属性 保存为word文档 【例子4-10】防止没有得到submit参数,通常先判断是否为空,为空则赋值为“”运行效果4.4.2response对象定时刷新页面【例子4-11】Insert title here现在的时间是效果:页面3秒钟刷新一次现在的时间是Sun Oct 11 11:19:16 CST 2009 现在的时间是Sun Oct 11 11:19:19 CST 2009 现在的时间是Sun Oct 11 11:19:22 CST 2009 4.4.2response对象重定向Insert title here请输入用
3、户名Insert title here%String str=request.getParameter(userName);if(str=null)str=;if(str.length()【例子4-12】ch4_12.jsp改错改错:教材中有错教材中有错误,应该重定向到误,应该重定向到ch4_12.jsp,否,否则会死循环则会死循环ch4_12show.jsp第三步A:作业1每隔1秒就变一次时间第三步A:作业2第三步A:作业3Baoming1.jsp接收参数,判断如果有空的参数,则跳转回baoming.jsp,并提示有空参数response.sendRedirect(baoming.jsp?e
4、rror=+URLEncoder.encode(空姓名);传中文参数需要用到的函数?当一个用户在客户端打开浏览器并链接到服务器端开始,一直到该用户关闭IE浏览器为止的这段时期。由于多种原因,在这段时间内,该用户会在这个服务器的不同页面之间跳转,那么服务器用什么办法知道和当前页面连接的用户是否是同一个用户?4.5 session!Http是无连接协议每完成一个请求和响应后连接就关闭,服务器并不保存客户原来的连接消息当用户浏览器再次浏览服务器时,服务器并不知道客户以前访问过什么,输入过什么信息为了保持浏览器和服务器的连接状态,tomcat使用内建的session对象记录有关的连接消息。sessio
5、n对象由服务器负责创建和销毁咖啡店的比喻店员能记住每个顾客积分每个客户(客户机器)有一个卡,上面记录了顾客积分在店里(服务器)记录了每个顾客积分,顾客出示卡号即可cookiesession支持连接协议支持连接协议顾客多了就记不住了!顾客多了就记不住了!怕顾客作假,怎么办?怕顾客作假,怎么办?new4.5.1 对象的id和生命周期建立一个服务器和客户浏览器之间的对话在同一个web服务目录中,一个session和一个客户是一一对应的Session的生命周期:从客户session对象创建到销毁的整个过程,又称为会话周期,取决于三个因素:1.客户是否关闭浏览器、2.session对象是否调用inval
6、idate()方法使得session无效、3.session对象是否达到了最长的“发呆状态”时间同一个Web服务目录下所有文件和文件夹用同一个sessionTomcat目录中,与root平级的目录为一个web服务目录服务目录Eclipse中,某个工程的webcontent为一个web服务目录服务目录Session的重要方法getId()获取session的id每个session的id都是不同的getCreateTime()获取session的创建时间getLastAccessTime()获取上次访问时间getMaxInactiveInterval()获取发呆时间setMaxInactiveIn
7、terval()设置发呆时间isNew()判断是否新产生的sessionInvalidate()使session无效比较session对象的id例4.14我是页面ch4_14_1.jspsessionID为 是否创建新的session对象最长的允许发呆时间为跳转到页面2现在的时间为【例子4-14】设置session的发呆时间为5秒例子4-14 比较session对象的id 例4.14我是页面ch4_14_2.jspsessionID为 是否创建新的session对象最长的允许发呆时间为跳转到页面1现在的时间为【例子4-14】运行效果两种情况session对象是true1:关闭了整个IE2:超过发呆时间 都没有访问服务器运行效果:超过发呆时间(5秒)中没有在服务目录内点击任何网页,则认为session失效疑问:页面自动刷新也算是用户激活了页面吗?在baoming1.jsp中输入数据,但是没有刷新也没有提交到服务器,算是激活了页面吗?算不算【例子4-15】对象存储数据保存用户名Ch4_15.jspInsert title here 用户名:密码:Ch4_15show.jsp【例子4-15】对象存储数据