《内置对象》PPT课件.ppt_第1页
《内置对象》PPT课件.ppt_第2页
《内置对象》PPT课件.ppt_第3页
《内置对象》PPT课件.ppt_第4页
《内置对象》PPT课件.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章内置对象Powerpoint制作耿祥义张跃平 配合例子源代码一起使用 课程目标 了解和掌握request对象方法了解和掌握response对象方法了解和掌握session对象方法了解和掌握out对象的方法了解和掌握application对象的方法 内置对象 定义 可以不加声明就在JSP页面脚本 Java程序片和Java表达式 中使用的成员变量共有9个内置对象有 resquest response session application out page pageContext config exception 内置对象的作用范围 Application起始于服务器开始运行 终止于服务器关闭Session客户端于服务器相连接的时间 到其连接中断为止Request一个JSP页面向另一个页面提出请求到请求完成之间Page本页面 1 request对象 request对象是javax servlet HttpServletRequest子类的对象当客户端请求一个JSP页面时 JSP容器会将客户端的请求信息包装在这个request对象中请求信息的内容请求行 请求的方式 比如 GET或POST 请求资源和使用的协议 请求的头信息 Header 信息体的附加信息 如主机地址等信息体 请求的参数名称和参数值等信息 1 1获取客户提交的信息 通常我们用得最多的就是客户端请求的参数名称和参数值信息 得到某参数值的语法为 request getParameter 参数名 也可以通过request对象的getParameterValues 方法得到客户端传递过来的参数的多个值 如 StringtextContent request getParameterValues 参数名 注意可能得到空对象null 没有提交数据 1 1获取客户提交的信息 程序名称 example4 1 jsp 提交本页 1 2处理汉字信息 中文乱码的由来常用字符集ASCII 美国信息互换信息代码 与8位二进制对应0 127ISO8859 1 增加了所有西方欧洲语言的附加字符0 255 GB2312和GBK 中国国家标准汉字信息交换编码 与16位二进制对应 中文的首位为1 1 2处理汉字信息 编码集不同 造成交流的困难 不同国家 Unicode协会制定统一编码Unicode 统一的字符编码标准集 0 65535 0 255与ISO8859 1相同 英文字符采用加长兼容 乱码产生分析 Java内部使用Unicode字符集读取 输出数据本地字符集Unicode字符集Web应用中 在其互相转换过程中出现乱码浏览器本地系统默认字符集Web服务器ISO 8859 1JDBC驱动 ISO 8859 1Web应用程序会在不同字符集中转换从Unicode向某个字符集转换时 如果没有对应编码 得到0 x3f 中文乱码的解决方案 1 在执行操作之前 设置request的编码格式 request setCharacterEncoding GB2312 2 转换字符编码Stringstr request getParameter boy byteb str getBytes ISO 8859 1 str newString b gb2312 1 3request对象的常用方法 getProtocol 获取请求使用的通信协议 如http 1 1等 getServletPath 获取请求的JSP页面所在的目录 getContentLength 获取HTTP请求的长度 getMethod 获取表单提交信息的方式 如POST或GET getHeader Strings 获取请求中头的值 getHeaderNames 获取头名字的一个枚举 getHeaders Strings 获取头的全部值的一个枚举 getRemoteAddr 获取客户的IP地址 getRemoteHost 获取客户机的名称 如果获取不到 就获取IP地址 getServerName 获取服务器的名称 getServerPort 获取服务器的端口号 getParameterNames 获取表单提交的信息体部分中name参数值的一个枚举 2 response对象 response对象是一个javax servlet http HttpServletResponse类的子类的对象它用于服务器对客户端的响应 向客户端发送数据响应与请求类似 由状态行 头和可能的信息体 2 2设置响应的HTTP头 可以利用JSP动态改变客户端的响应 使用的语法是 response setHeader 比如让客户端自动每隔5秒刷新一次 程序名称 example4 5 jsp 现在的时间是 2 3网页转向 sendRedirect 方法 将当前客户端的请求转到其它页面去 相应的代码格式为 response sendRedirect URL地址 和指令的区别 forward只是将请求进行转发 只能在本网站内跳转 URL不变sendRedirect是重新响应 跳转到任何一个地址的页面 URL改变 2 4状态行 定义了一组整型的静态常量表示错误代码 400语法错误404请求资源不可用500服务器内部错误 3 session对象 内置对象session由Tomcat服务器负责创建 session是实现了HttpSession接口类的一个实例session对象用来记录客户与服务器的连接信息 3 1session对象的ID 当客户首次访问WEB应用程序的JSP页面 Tomcat服务器产生一个session对象 存放各个页面提交的信息 session对象被分配了一个String类型的ID Tomcat服务器将ID发送到客户端 存放在客户的Cookie中 同一用户在同一Web服务目录中的各个页面的session是相同的 不同用户的session对象互不相同 具有不同的ID 3 2session对象存储数据 1 publicvoidsetAttribute Stringkey Objectobj 将参数Object指定的对象obj添加到session对象中 并为添加的对象指定了一个索引关键字 如果添加的两个对象的关键字相同 则先前添加的对象被清除 2 publicObjectgetAttibute Stringkey 获取session对象含有的关键字是key的对象 由于任何对象都可以添加到session对象中 因此用该方法取回对象时 应强制转化为原来的类型 3 2session对象存储数据 3 publicEnumerationgetAttributeNames session对象调用该方法产生一个枚举对象 该枚举对象使用nextElemets 遍历session中的各个对象所对应的关键字 4 publicvoidremoveAttribute Stringname session对象调用该方法移掉关键字key对应的对象 3 2session对象存储数据 main jsp 获取名字存入session对象session setAttribute customerName name food jsp 选取各种食品存入session对象StringfoodName request getParameterValues choice if foodName null for intk 0 k foodName length k session setAttribute foodName k foodName k 3 2session对象存储数据 count jsp 显示姓名和所选商品EnumerationenumGoods session getAttributeNames out println 购物车中的商品 while enumGoods hasMoreElements Stringkey String enumGoods nextElement Stringgoods String session getAttribute key if goods equals personName out println goods 3 3session对象的生命期限 从用户开始连接Web服务器到中断与服务器的连接发呆状态 两次请求的最大间隔时间 可通过conf文件夹下的web xml修改设置生命周期的相关方法invalidate session失效getCreationTime 创建对象的时间 3 4URL重写 session对象与客户对应关系的建立依赖于客户端浏览器是否支持Cookie 可通过URL重写实现Session对象的唯一性 将ID在页面间传递过去Stringstr response encodeRedirectURL 地址 连接目标改成 3 5计数器 hellOne jsp调用tag文件 显示访问次数helloTwo jsp调用tag文件 显示访问次数count tag访问count txt 计算访问次数并把它写到文件中去 4 out对象 内置对象out对象是JspWriterout类的一个实例out对象是一个输出流 指向客户浏览器的缓冲区可调用如下的方法用于各种数据的输出 如 boolean char double等out print Object out println Object 用于输出各种数据忽略println的换行 5 application对象 任何客户在访问服务目录的各个页面时 application对象都是同一个 常用方法 同session一致 1 publicvoidsetAttribute Stringkey Objectobj 2 publicObjectgetAttibute Stringkey 3 publicEnumerationgetAttributeNames 4 publicvoidremoveAttribute Stringname 5 publicStringgetServletInfo 获取Servlet编译器当前版本的信息 5 2制作留言板 submit jsp 提交留言 姓名 标题 留言 messagePane jsp 获取留言 并将留言存放在appliction对象中showMessage jsp 读取并显示留言 课程总结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论