请求参数、响应输出中文乱码问题
来源:互联网 发布:陕西广电网络校园招聘 编辑:程序博客网 时间:2024/05/28 09:32
响应输出中文问题
当Servlet程序需要输出纯文本格式的响应正文时,通常会调用ServletResponse对象的getWriter方法返回一个PrintWriter对象,
PrintWriter out = response.getWriter();
然后使用这个PrintWriter对象将文本内容写入到客户端。
out.println("<p>您购买的书籍有:</p>");可以使用ServletResponse接口中的setCharacterEncoding()、setContentType()和setLocale()等方法来指定字符集。字符编码方式按含有中文的字符集要进行转换。
//设置响应的文本类型为HTML,字符编码为UTF-8response.setContentType("text/html;charset=UTF-8");
setContentType()方法既可以设置PrintWriter输出流中字符的编码方式,也可以设置浏览器接收到这些字符后以什么编码方式来解码。
请求参数的中文问题
POST请求的中文请求参数处理
请求时,浏览器会按当前显示页面所采用的字符集对请求的中文数据进行编码,而后再以报文体的形式传送给Tomcat服务器,服务器端Servlet在调用HttpServletRequest对象的getParameter()方法时,会按默认的不支持中文的字符集进行编码。因此会造成中文参数的乱码问题。
因此对于POST请求,在获取参数时要先调用setCharacterEncoding()方法设定与页面请求编码相同的字符集。
/./获取请求对象的字符编码,编码值与页面请求编码值一致。request.setCharacterEncoding("UTF-8");//获取请求数据String username = request.getParameter("username");
对于GET请求,当请求URL中查询字符串含有中文参数时,也有可能会出现中文乱码问题。也会由客户端编码和服务器端解码使用的字符集不一致而产生。
JSP页面中的编码设置可如下
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title> </title></head>
阅读全文
0 0
- 请求参数、响应输出中文乱码问题
- 解决页面请求/响应中文乱码问题
- Http协议中关于请求与响应中文参数乱码问题详解
- (27)请求参数的中文乱码问题
- 请求参数的中文乱码问题
- 请求参数的中文乱码问题
- 请求参数的中文乱码问题
- 请求参数的中文乱码问题总结
- 请求参数的中文乱码问题
- 解决中文请求参数乱码问题
- 解决ajax请求中文参数乱码问题
- 解决jemter请求参数中文乱码问题"
- 关于请求参数中文乱码的问题
- 关于请求参数中文乱码的问题
- springmvc 请求参数中文乱码 ,@ResponseBody 返回中文乱码问题
- 解决servlet响应用户中文请求信息的乱码问题
- springMVC请求和响应时的中文乱码问题
- Tomcat 8.0.0响应get请求时中文乱码问题
- Timecc++ Time时间的获取与简单操作
- centos7—日志文件
- 趣解 什么叫网关?
- 【学习C++】学习C++ -> 概述与相关工具的安装
- 机器学习_链接分析-pageRank
- 请求参数、响应输出中文乱码问题
- hadoop-3.0.0-beta1运维手册(001):定制虚拟机
- 创建一个数组, 实现函数init()初始化数组实现empty()清空数组实现reverse()函数完成数组元素的逆置。
- 51nod 1138 连续整数的和(简单数学、等差数列)
- 刷题笔记:牛客字符串专项练习2
- 自定义类型(结构体,枚举,联合,位段)
- 十三周 项目3
- POJ-2417 Discrete Logging (BSGS算法,离散对数)
- 统计学习精要