首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

inputstream.read() 方法 乱码_InputStreamReader

new InputStreamReader(request.getInputStream())引起了乱码,改为 new InputStreamReader( request.getInputStream(),“UTF-8”)后解决了乱码问题 针对这个乱码问题,在网上搜索后有以下3种情况 [1] 数据库表里面字符集设置错误 [2] 由于未加编码过滤器导致SpringMVC接收参数时造成的乱码 [3] 代码中涉及byte数组转换String时出现了问题 一、解决数据库表里面字符集设置错误 1、打开navicat工具并连接上自己的数据库找到要修改默认字符集的表格。 2、右击表格在菜单中找到“表讯息”。 3、打开表讯息,可以在常规界面中看到“整理”的值为latin1,这个就是表格的字符集。下面我们要把它改成我们需要的utf8 4、输入sql语句ALTER TABLE 表名 DEFAULT CHARACTER SET utf8; 把表名改成自己表格的名字。 5、再返回查看表格“表讯息”发现表格的字符集已经改成了utf8 二、由于未加编码过滤器导致SpringMVC接收参数时造成的乱码 1.先保证所有的页面编码都是utf-8,包括jsp页面,浏览器编码设置和eclipse的编码设置。

03

MySQL中涉及的几个字符集

character-set-server/default-character-set:服务器字符集,默认情况下所采用的。 character-set-database:数据库字符集。 character-set-table:数据库表字符集。 优先级依次增加。所以一般情况下只需要设置character-set-server,而在创建数据库和表时不特别指定字符集,这样统一采用character-set-server字符集。 character-set-client:客户端的字符集。客户端默认字符集。当客户端向服务器发送请求时,请求以该字符集进行编码。 character-set-results:结果字符集。服务器向客户端返回结果或者信息时,结果以该字符集进行编码。 在客户端,如果没有定义character-set-results,则采用character-set-client字符集作为默认的字符集。所以只需要设置character-set-client字符集。

02
领券