Response (HttpServletResponse)
学好的关键:理解HTTP协议
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。
一、HttpServletResponse
1、响应行 HTTP/1.1 200 OK
setStatus(int sc) 设置响应状态码
2、响应头
*****sendRedirect(String location) 请求重定向 浏览器2次
请求转发 浏览器一次
setHeader(String name, String value) 设置响应头信息
//告知浏览器使用什么码表
response.setHeader("content-type", "text/html ; charset=UTF-8");
//告知客户端不缓存
response.setHeader("pragma", "no-cache");
response.setHeader("cache-control", "no-cache");
response.setDateHeader("expires", 0);
//Referesh刷新
response.setHeader( “refresh”,”3;url=.......”);
3、响应正文(主体)
*** getWriter(); 字符输出流
//若要用中文码表,则先response.setHeader(“content-type”,”text/html;charset=UTF-8”);
response.getWriter().write(“你好”);
getOutputStream(); 字节输出流
//中文码表
response.getOutputStream().write(“你好”.getBytes(“ UTF-8”));
//非中文码表
response.getOutputStream().write(“abc”.getBytes());
setCharacterEncoding(String charset) 告知服务器使用什么编码
response.setCharacterEncoding(“UTF-8”);
*****setContentType(String type)同时告知服务器和用户端
response.setContentType(“text/html;charset=UTF-8”);