2018年07月10日 01:15:06 ZWMLLL 阅读数:44
HttpServletResponse: 负责返回数据给客户端。
作用:输出数据到页面上
//以字符流的方式写数据
//response.getWriter().write("<h1>hello response...</h1>");
//以字节流的方式写数据
response.getOutputStream().write("hello response2222...".getBytes());
响应的数据中有中文,那么有可能出现中文乱码
* 以字符流输出
> response.getWriter()
//1. 第一种方法,指定输出到客户端的时候,这些文字使用UTF-8编码
response.setCharacterEncoding("UTF-8");
//2. 第二种方法,直接规定浏览器看这份数据的时候,使用什么编码来看。
response.setHeader("Content-Type", "text/html; charset=UTF-8");
response.getWriter().write("我爱黑马训练营...");
* 以字节流输出
> response.getOutputStream()
//1. 第一种方法,指定浏览器看这份数据使用的码表
response.setHeader("Content-Type", "text/html;charset=UTF-8");
//2. 第二种方法,指定输出的中文用的码表
response.getOutputStream().write("我爱深圳黑马训练营..".getBytes("UTF-8"));
--------------------------------------------
不管是字节流还是字符流,直接使用一行代码就可以了。
response.setContentType("text/html;charset=UTF-8");
然后在写数据即可。
例子:
public class loginServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//response返回数据,解决中文乱码
//无论什么是字节流还是字符流,使用这种方法都是可以的
response.setContentType("text/html;charset=UTF-8");
//以字符流输出
//第一张方法,指定输出到客户端的时候,这些文字使用UTF-8编码
//response.setCharacterEncoding("UTF-8");
//第二种方法,直接规定浏览器看这份数据的时候,使用什么编码来看
//response.setHeader("Content-type", "UTF");
//response.getWriter().write("字符流输出");
//以字节流输出
//第一种方法,指定浏览器看这份数据使用的码表
//response.setHeader("Content-type", "text/html;charset=UTF-8");
//第二种方法,指定输出的中文用的码表
//response.getOutputStream().write("字节流输出".getBytes("UTF-8"));
//response.getOutputStream().write("字节流输出".getBytes());
//以下代码是关于如何利用response跳转到其他的页面
//设置处理这个请求的状态
//response.setStatus(302);
//定位跳转的位置是哪个页面
//response.setHeader("Location", "index.html");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.print("来了一个post请求");
doGet(request, response);
}
}