JSP学习笔记之response对象
response对象表示服务器端对客户端的回应,response本身是HttpServletResponse的对象,HttpServletResponse对象本身也是ServletResponse对象的子接口,这点与reqeust是一样的
response中也有很多用法,最长用的有设置头信息、跳转、Cookie,其主要方法有:
public void setHeader(java.lang.String name, java.lang.String value) ---设置头信息的名字和内容
public void sendRedirect(java.lang.String location) throws java.io.IOException ----跳转,由一个页面跳往另外一个页面
public void addCookie(Cookie cookie) ---向客户端加入cookie
public void setContentType(java.lang.String type) ----设置内容的返回类型
头信息:随着具体的内容一起提交到服务器端,或者从服务器端随内容一起发到客户端上来,在jsp中可以使用request对象的方法可以取出头信息
取出全部头信息内容:public java.util.Enumeration getHeaderNames()
取得每一个头信息内容:public java.lang.String getHeader( java.lang.String name)
看如下实例:
<head> <title>复杂表单的提交</title> <meta http-equiv="refresh" CONTENT="2; URL=../emp.jsp"> </head>
response.sendRedirect("demo01.jsp");
此种跳转依然可以使用重写地址的方式向跳转页传递参数:
response.sendRedirect("demo01.jsp?ref=helloword");
接收也面依然使用request.getParameter()方法接收
两种跳转的区别:
服务器端的跳转:<jsp:forward page=" " /> 无条件跳转,只要语句执行到此处就会跳转,而且可以传递ruquest参数
客户端的跳转:response.setHeader(" ") reseponse.sendRedirect( " ") 所有页面执行完成之后在进行跳转,不能传递request范围的参数
COOKIE:是服务器端保存在客户端的一组数据,安全性较差,在JSP中,cookie属于单独的一个类,定义在javax.servlet.http.*
Cookie类的定义: public class Cookie extends java.lang.Ojbect implemnets java.lang.Cloneable
Cookie类的主要方法:
public Cookie (String name,String value):Cookie的构造方法,实例化Cookie对象,传入名称和内容
public java.lang.String getName() :取得Cookie的名字
public void setValue(java.lang.String newValue) :修改内容
pubilc void setMaxAge(int expiry):Cookie的最大保存时间