第4章JSP内置对象.pptVIP

  • 3
  • 0
  • 约1.46万字
  • 约 57页
  • 2017-05-29 发布于四川
  • 举报
4.2.1 动态响应contentType属性 由于page指令只能为contentType属性指定一个值来决定响应的MIME类型。 如果想动态地改变这个属性的值来响应用户,就需要使用response对象的setContentType(String s)方法来改变contentType的属性值。 public void setContentType(String s);方法动态设置响应的MIME类型,参数s可取: text/html、text/plain、image/gif、image/x-xbitmap、 image/jpeg、image/pjpeg、application/x-shockwave-flash、 application/vnd.ms-powerpoint、 application/vnd.ms-excel、 application/msword。 例4-10 P78 例 response01.jsp 4.2.2 response的HTTP文件头 response对象可以使用方法: addHeader(String head,String value); 或使用方法: setHeader(String head ,String value); 动态添加新的响应头和头的值,并将这些头发送给用户的浏览器。如果添加的头已经存在,则先前的头被覆盖。 自动更新网页 response.setHeader(“Refresh”,”5”); 网页的内容将会5秒钟更新一次 response.setHeader(“Refresh”,”5;URL=response01.jsp”); 可以让一个页面经过5秒之后跳转到其他页面.(定时跳转之后,地址栏变化了,称为客户端跳转) 例4-12 P80 4.2.3 response重定向 在某些情况下,JSP引擎在响应用户时,可能需要将用户重新引导至另一个页面。(客户端跳转) response.sendRedirect(“URL”); //URL可以使完整的路径(http://localhost:port/…),也可以是相对路径 例如,如果用户输入的表单信息不完整,就会再次被引导到该表单的输入页面。 使用response对象的sendRedirect(“URL”)方法实现用户的重定向。 例4-13 P81 两种跳转的区别: 客户端跳转:sendRedirect(), setHeader() 服务器端跳转:jsp:forward forward是无条件跳转,只要执行到此语句立即跳转。 sendRedirect跳转发生在整个页面执行完之后再 跳转。 forward地址栏不发生变化, sendRedirect地址栏发生变化。 forward可以传递request属性。 sendRedirect则是一个全新的请求,不传递request属性。 例:response02.jsp response03.jsp 和response04.jsp 4.2.4 response的状态行 当JSP引擎对用户请求进行响应时,它发送的首行称做状态行。 状态行包括3位数字的状态代码和对状态代码的描述(称做原因短语)。 参考表4-1 状态代码表 例:sameWebOne.jsp P82 关于cookie对象 Cookie对象是由Web服务器端产生后被保存在客户端的一组信息,安全性较差。 在JSP中Cookie属于单独一个类,此类定义在javax.servlet.http.*; Cookie类的主要方法: Public Cookie(String name,String value) 实例化Cookie对象,传入名字和内容 Public String getName() 获取Cookie的名字 Public void setValue(String newValue) 修改内容 Public void setMaxAge(int expiry) Cookie的最大保存时间 要想设置Cookie,则肯定使用response对象。 %@ page contentType=text/html;charset=GB2312% % // 准备好了两个Cookie Cookie c1 = new Cookie(username,“tom) ; Cookie c2 = new Cookie(userpass,) ; // 通过response设置到客户端上去 response.addCookie(c1) ; response.addCookie(c2) ; % 例:向客户端增

文档评论(0)

1亿VIP精品文档

相关文档