Spring MVC 响应时乱码问题

BUG胡汉三
博客专家认证
2015-05-18 07:37:46
系统使用Hibernate+Spring Date JPA + Spring + Spring MVC + HTML5 + jquery
编码格式统一为:UTF-8 从数据库到页面都是。
所有页面的html头都加上了<html lang="zh-CN">
刚刚开始开发的时候没怎么注意,一只都是好好的没有乱码的问题。
后来开始测试的时候不断的点击访问过后就会出现乱码了,不分页面的,有点“随机”乱码的意思。就是有可能点着点着某个页面就乱码了。。。

Tomcat的Server.xml文件,页面,过滤器设置都没有问题,但是就是有时乱有时候不乱,乱码的时候刷新一下页面就好了....不晓得这时什么问题。后来发现有可能是服务器响应的问题,在不断的访问过程中服务器处理不过来....会不会是这个问题呢,也不晓得!
在乱码的时候打开google浏览器控制台,发现Network中响应的Type为:text/plain变成了文本的页面直接显示源码....google浏览器自动加上了pre标签来包裹响应的代码....


完全不晓得该从何下手....求大大们指点指点

错误的响应谷歌浏览器Network中的Type为text/plain:

Remote Address:127.0.0.1:8080
Request URL:http://localhost:8080/shb/commodity/allList.jspx
Request Method:GET
Status Code:200 OK

Request Headers
view source
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:zh-CN,zh;q=0.8,en;q=0.6
Connection:keep-alive
Cookie:JSESSIONID=4B8033D16266D985623A794AA01AB107
Host:localhost:8080
Referer:http://localhost:8080/shb/carpool/allList.jspx
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36


正确的响应谷歌浏览器Network中的Type为text/html:

Remote Address:127.0.0.1:8080
Request URL:http://localhost:8080/shb/commodity/allList.jspx
Request Method:GET
Status Code:200 OK

Response Headers
view source
Content-Language:zh-CN
Content-Type:text/html;charset=UTF-8
Date:Mon, 18 May 2015 11:16:14 GMT
Server:Apache-Coyote/1.1
Transfer-Encoding:chunked

Request Headers
view source
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:zh-CN,zh;q=0.8,en;q=0.6
Cache-Control:max-age=0
Connection:keep-alive
Cookie:JSESSIONID=4B8033D16266D985623A794AA01AB107
Host:localhost:8080
Referer:http://localhost:8080/shb/carpool/allList.jspx
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36





正确的时候有两个Request Headers 错误的时候少了一个Request Headers...唉,不晓得什么问题...求指导!



...全文
404 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
BUG胡汉三 2015-05-27
  • 打赏
  • 举报
回复
引用 3 楼 luodaoren1984 的回复:
因为你是个死萝莉控,总发一些不健康的图片,所以刚发上来就被删掉了。 不懂,只能帮顶了。。
道长去屎,哈哈哈~ 我已经不想在去纠结怎么配置去搞定了.....反正乱码过后刷新就不乱码了,所以我就检测了一下~发现乱码了就直接刷新! 乱码的情况都是因为服务器没有响应ContentType,所以当它为null的时候我就刷新.这样就搞定了!

<%
	String c = response.getContentType();
	if(c==null||c.equals("")||c.equals("null")){
	%>
<script type="text/javascript">
<!--
	window.location.reload();
//-->   
</script>
	<%}%> 
SUN丶XT 2015-05-19
  • 打赏
  • 举报
回复
不好意思,刚刚没发全。 在web.xml配置文件里面加上这一段 <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <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> </filter> 还有界面提交数据的表单的提交方式要是post
SUN丶XT 2015-05-19
  • 打赏
  • 举报
回复
在web.xml配置文件里面加上这一段
罗道人J 2015-05-19
  • 打赏
  • 举报
回复
因为你是个死萝莉控,总发一些不健康的图片,所以刚发上来就被删掉了。 不懂,只能帮顶了。。
BUG胡汉三 2015-05-18
  • 打赏
  • 举报
回复
csdn也是够可以~才上传的图片就删除~能告诉我为什么吗?
我没有没有反人类呀!


BUG胡汉三 2015-05-18
  • 打赏
  • 举报
回复
而且有时候页面不乱码google浏览器也会自动给我加上pre标签~然后显示源码!!!
我谷歌浏览器的版本是:42.0.2311.90 m




太奇怪了~明明说好的404,但是又能返回源代码来,来了又不显示.....哎!!!

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧