中文乱码问题

关于项目中出现中文乱码问题
1.乱码经常会出现在什么位置上
-数据传递过程中的乱码
-数据展示过程中的乱码
-数据保存过程中的乱码

2.数据保存过程中的乱码
-最终保存到数据库表中,数据出现乱码
-导致数据保存中出现乱码的两种情况
第一种情况:在数据保存之前数据本身就是乱码
第二种情况:数据本身不是乱码,但是由于数据库不支持中文,所以出现乱码

3.数据展示过程中的乱码
-最终显示到网页数据出现乱码
-经过执行java程序之后,java程序负责向浏览器响应的时候,中文出现乱码,怎么解决
设置响应的内容类型,以及对应的字符编码方式:
response.setContentType(“text/html;charset=UTF-8”)
-如果没有经过java,直接访问html,出现中文乱码,怎么解决
meta content=“text/html;charset=UTF-8”

4.数据传递过程中的乱码?
-将数据从浏览器发送给服务器的时候,服务器接收的数据是乱码
-浏览器是这样发送数据给服务器的:dname=%D4%R3%A5%
-这个是ISO-8895-1,是国际编码标准,不支持中文,兼容ASCII码
-不管是哪个国家的服务器,在浏览器发送给服务器的时候都会采用ISO-8895-1发送

解决数据传递过程中出现的乱码
第一种解决方案:
万能方式,既能解决POST的请求乱码,又能解决GET的请求乱码
先将服务器接收到的数据采用ISO-8895-1的方式解码,回归到原始状态
再给定一种简体中文的编码方式重新编码组装【组装的时候需要和浏览器的编码方式相同】
在这里插入图片描述
第二种解决方案:【只支持POST请求,因为这种方式只对请求体编码】
Request.setCharacterEncoding(“UTF-8”)

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值