通过response设置响应体

响应体设置文本

PrintWriter getWriter()

获得字符流,通过字符流的write(String s)方法可以将字符串设置到response     缓冲区中,随后Tomcat会将response缓冲区中的内容组装成Http响应返回给浏览  器端。

关于设置中文的乱码问题

原因:response缓冲区的默认编码是iso8859-1,此码表中没有中文,可以通过    response的setCharacterEncoding(String charset) 设置response的编码

但我们发现客户端还是不能正常显示文字

原因:我们将response缓冲区的编码设置成UTF-8,但浏览器的默认编码是本地系   统的编码,因为我们都是中文系统,所以客户端浏览器的默认编码是GBK,我们可以   手动修改浏览器的编码是UTF-8。

我们还可以在代码中指定浏览器解析页面的编码方式,

通过response的setContentType(String type)方法指定页面解析时的编码是UTF-8

response.setContentType("text/html;charset=UTF-8");

上面的代码不仅可以指定浏览器解析页面时的编码,同时也内含

setCharacterEncoding的功能,所以在实际开发中只要编写 response.setContentType("text/html;charset=UTF-8");

就可以解决页面输出中文乱码问题。

package com.learn.content;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class TextServlet extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//设置response查询的码表//response.setCharacterEncoding("UTF-8");//通过一个头 Content-Type 告知客户端使用何种码表//response.setHeader("Content-Type", "text/html;charset=UTF-8");response.setContentType("text/html;charset=UTF-8");PrintWriter writer = response.getWriter();//writer.write("hello response!!!");writer.write("你好");}protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request, response);}
}

使用response的writer相关推荐

  1. 3.request response

    rr的介绍 request是代表请求,response是响应 执行流程: 1.浏览器发送请求 2.服务器接受请求,创建两个对象,将请求信息封装给request,将两个对象发送给对应的servlet 3 ...

  2. response.getWriter().write()和 response.getWriter().print()的区别

    异步上传图片的代码.发现里面用了response.getWriter().print(),故联想到response.getWriter().writer(),经过一番api的查找与实操,总结如下: r ...

  3. 解决response响应乱码

    最简单的方法在最下面! 所对应的xml里面的信息都是一样的! <?xml version="1.0" encoding="UTF-8"?> < ...

  4. Java实战之04JavaWeb-02Request和Response

    一.Response和Request的生态环境 二.HttpServletResponse---代表响应对象 1.设置状态码 void setStatus(int sc) 状态码: 200:一切正常 ...

  5. 有关Struts2a的ction直接使用response异步问题

    假设我们在项目中使用struts2,正在使用ajax而通信时后端程序.为简单起见,我们经常使用下面的方法:         ActionContext ac = ActionContext.getCo ...

  6. response 中OutputStream和PrintWriter区别

    https://blog.csdn.net/feipeng8848/article/details/56286399 https://blog.csdn.net/lhanson/article/det ...

  7. 装饰模式-包装request和response

    包装request,把header中的token取出来,写入body中,controller用@RequestBody注解解析成pojo,token可以自动注入值到入参类中 继承HttpServlet ...

  8. response.getWriter().write()和 response.getWriter().print()的区别 以及 PrintWriter对象 和 out对象 的区别

    感谢原文作者:krismile__qh 原文链接:https://blog.csdn.net/krismile__qh/article/details/89926001 一.response.getW ...

  9. 请求转发(request对象)和重定向(response)的区别及何时使用请求转发和重定向

    标题request和response主要区别: 1. 请求转发使用 request对象,重定向使用 response 对象 2. 请求转发使用服务器端路径,重定向使用客户端路径 3. 请求转发不能跳转 ...

最新文章

  1. Subsonic设置--新手上路
  2. UNIX环境高级编程——无名管道和有名管道
  3. JDK8 Stream 效率如何?
  4. 【vscode】python工作目录添加到环境中
  5. 基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统...
  6. 线程间操作无效,从不是创建控件的线程访问它。
  7. how is sales pipeline retrieved from backend
  8. 价值98元的千神资源网模板
  9. 推荐系统之协同过滤算法分布式实现(附代码实现)
  10. 可口可乐造型设计_可口可乐推出黑科技音响,还能当冰箱用?
  11. linux php zend load,在Linux系统中为PHP5.3安装Zend Guard Loader
  12. 署五笔软件测试初学者,三天学会五笔打字练习(新手教程)
  13. 计算机 管理 用户,一种计算机系统及管理计算机用户权限的方法_2
  14. 服务器上系统使用排行,服务器操作系统使用排行榜
  15. Hive批量删除历史分区
  16. 上海亚商投顾:沪指震荡反弹 游戏、传媒概念股再度大涨
  17. Redis缓存穿透、击穿、雪崩、概念及解决办法
  18. 【数学 裴蜀定理】luogu_4549 裴蜀定理
  19. Netty5基础知识介绍及简单使用
  20. 怎样使页面加载完再执行js代码

热门文章

  1. Oracle11gR2-聚簇因子浅析
  2. jenkins定时任务
  3. codeforces - 766B【三角形判断】
  4. 数据压缩 第四次作业
  5. Linux 下C++编写
  6. MVC3 Razor学习资料汇总(ScottGu的博客截至2011-02-15动态)
  7. Silverlight学习笔记(三):创建第一个Silverlight应用程序
  8. Tomcat正常启动,可以访问其主页,却不能访问webapp中的项目的jsp文件
  9. centos7安装nvidia驱动
  10. Usb设备驱动3:root hub守护进程2