Jsp中response对象的所有属性详细介绍 所属接口:javax.servlet.http.HttpServletResponse,其父接口是ServletResponse,而且ServletResponse也现在只有唯一一个HttpServletResponse子接口,主要原因是,现在的J2EE的WEB程序主要以HTTP协议为主要通讯协议。 response对象的功能: 1. setHeader( String name , String value ) 设置指定的HTTP文件的值,如果该值已经存在,则新值会覆盖原有的旧值. 设置头信息:response.setHeader("头信息内容","头信息参数"); 常用的刷新refresh,例如:response.setHeader("refresh","1"); 几秒后跳转:response.setHeader("refresh","2:URL=XXX"); 2 重定向--response跳转:response.sendRedirect("跳转地址"); (重定向会丢失所有的请求参数,使用重定向的效果,与地址栏里重新输入新地址再按回车的效果完全一样,即发送了第二次请求) 此语句执行后,页面地址也变为跳转后的地址 面试中常见问题:两种跳转的区别:地址栏不改变--属于服务器端跳转 执行到跳转语句后无条件立刻跳转--之后的代码将不再执行 注意:若使用forward跳转则一定要在跳转前释放掉全部资源; 使用forward时,request设置的属性(setAttribute)依然能保留到下一个页面 通过传递参数 response.sendRedirect("跳转地址"): 地址栏改变--属于客户端跳转 页面的所有代码执行完毕之后再跳转 不能保存request属性,地址栏改变了,客户端跳转 通过对URL地址的重写传递参数 3.addCookie( Cookie cook ) 添加一个Cookie对象,用来保存客户端用户信息. Cookie是服务器端保存在客户端的一组资源 通过Cookie实现保存密码或者多长时间无需再输入密码等功能 设置Cookie的方法:Public Void addCookie(Cookie cookie) Cookie是通过服务器端设置到客户端上去的--response 如果要在服务器端取得Cookie--request 在request对象中有Public Cookie[] getCookies()方法 在使用request对象取得全部Cookie时会出现JSESSIONID,表示唯一的客户端在服务器上的编号,这个值在客户端第一次访问服务器端之后设置 默认情况下Cookie只针对当前浏览器有效,如果需要长留在计算机上,可以设置Cookie的保存时间,通过设置Cookie最大保留时间方法:setMaxAge() 1.. addHeader( String name , String value ) 添加HTTP文件头信息,该Header将传到客户端去,如果已经同的Header存在,则覆盖已有的Header. 2.. containsHeader( String name ) 判断指定名字的HTTP文件头是否已经存在,然后返回真假布尔值. 3.. sendError( int ) 向客户端发送错误的信息. 4.. setHeader( String name , String value ) 设置指定的HTTP文件的值,如果该值已经存在,则新值会覆盖原有的旧值.