1 //内容类型和编码格式可以被调用多次,最后一次将覆盖之前的设置
2 //内容类型和编码格式必须在
3 //设置内容类型getWriter和getOutputStream方法之前调用,否则不起作用
4 //若未设置则返回的数据将使用web容器默认的编码
5 response.setHeader("Content-type", "text/html;charset=UTF-8");
6 //设置编码格式
7 response.setCharacterEncoding("utf-8");
8
9 //web容器完成响应之后,将会设置ContentLength头,由它完成会更安全。
10 //一般情况都不需要调用这些方法
11 response.setContentLength(20);
12 response.setContentLengthLong(50);
13
14
15 //为了避免覆盖已存在的响应头信息,可以使用一下方法添加新的头信息
16 response.addHeader("head", "head");
17 response.addIntHeader("intHead", 1);
18 response.addDateHeader("dateHead", 32);
19 //判断是否已经设置了某个响应头
20 response.getHeader("head");
21 response.getHeaders("head");
22 Collection<String> headerNames2 = response.getHeaderNames();
23 response.containsHeader("head");
24
25
26 //设置HTTP响应状态码
27 response.setStatus(200);
28 response.setStatus(200, "响应成功");
29
30 //获取当前响应的状态
31 int status = response.getStatus();
32
33 //设置状态码,表示一条可选的错误信息将会输入到响应数据中
34 //重定向到web容器为客户端提供错误页面,并清空缓存
35 response.sendError(404);
36
37 //将客户端端重定向到另一处URL
38 response.sendRedirect("url");
39
40 //不能对同一个响应对象response使用getOutputStream和getWriter方法
41 //否则会报java.lang.IllegalStateException
42 //响应正文:返回二进制数据必须使用ServletOutputStream
43 // ServletOutputStream outputStream = response.getOutputStream();
44 //响应正文:html、基于字符编码的文本
45 PrintWriter writer = response.getWriter();