序言:
首先大家要理解编码的世界有很多种方式,UTF-8,GBK等。
1.浏览器和web服务器读彼此的内容首先要知道彼此的编码套路
2.两者之间的交互是已已经编码的字节流传送,彼此接收到后可能转为自己默认的编码,或者直接按照你的编码显示
3.本质就是已经按照某种方式编码的字节流
1.spring的配置characterEncodingFiter解决与浏览器的交互乱码
1).设置两个参数,告诉彼此request和response的硬编码
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
2.编辑器编码问题
1).IDEA默认是UTF-8,但是如果一个GBK编码的文件显示为乱码,所以要IDEA转编码,才能正确显示
本质还是上面说的:已经编码的字节流,要显示出UTF-8的字符,只能将GBK-8转码。
3.浏览器和web服务器的交互
1).了解servlet的请求request和response的编码
本质设置:
request.setCharacterEncoding()