httpServletResponse继承了servletResponse,增加了一些关于http协议的方法, 两者相差不大, servletResponse 无法获取 http 信息.
1.设置一些常用的信息:
- 响应cookie
- 设置mime类型
2.设置http响应消息:(必须是 httpServletResponse)
- 设置响应行消息
- 格式:HTTP/1.1 200 ok
- 设置状态码:setStatus(int sc)
- 设置响应头消息:setHeader(String name,String value);
- 设置响应体
- 步骤
- 获取输出流
- 获取字符输出流:getWriter();
- 获取字节流:getOutputStream();
- 使用输出流,讲数据输出到客户端
- 获取输出流
- 步骤
3.重定向
- response.sendRedirect(request.ContentPath()+”资源路径”);
- 特点:
- 地址栏发生变化
- 可以访问其他站点的资源
- 是2次请求,且不可共享数据
- 路径写法:
- 相对路径
- 同级目录:./(默认可以省略)
- 父级目录:../
- 子集目录:/xx/
- 绝对路径:目标地址的url
- 与转发时路径的区别对比
- 转发是服务器进行的,不需要加虚拟目录
- 重定向是客户端进行的,需要加虚拟目录
- 虚拟目录的获取:request.getContentPath();
- 相对路径
4.设置响应格式与编码格式
注:默认响应编码:ISO-8859-1
- 默认格式:
- 设置响应编码:response.setCharaterEncoding(“utf-8”);
- 设置响应格式:response.setHeader(“content-type”,”text/html”);
- 合并格式:
- response.setHeader(“context-type”,”text/html;charset=utf-8″);
- 简易格式:response.setContentType(“text/html;charset=utf-8”);