关于reponse.write()输出中文乱码解决

 public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("helloServlet的service方法");
        //设置响应类型,用于设置content-type消息头的值.浏览器收到之后,就会按照指定的类型去解析
        res.setContentType("text/html");
        
        //获取输出流
        PrintWriter writer = res.getWriter();
        //将处理结果写到reponse对象里面,容器会从reponse对象中获取处理结果
        //然后创建一个响应数据包发给浏览器
        writer.println("你好");
        //关闭输出流
        writer.close();
    }

在创建第一个Servlet程序输出后,发现乱码,网页中输出的你好是乱码,这里提供一下解决方法:

res.setCharacterEncoding("utf-8");

在代码中添加上面的代码即可

public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("helloServlet的service方法");
        //设置响应类型,用于设置content-type消息头的值.浏览器收到之后,就会按照指定的类型去解析
        res.setContentType("text/html");
        res.setCharacterEncoding("utf-8");
        //获取输出流
        PrintWriter writer = res.getWriter();
        //将处理结果写到reponse对象里面,容器会从reponse对象中获取处理结果
        //然后创建一个响应数据包发给浏览器
        writer.println("你好");
        //关闭输出流
        writer.close();
    }

你可能感兴趣的:(servlet,html,前端,java)