码迷,mamicode.com
首页 > 其他好文 > 详细

部署到Tomcat下乱码

时间:2015-07-22 14:57:50      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:

1、采用json数据交互,将将后台从数据库查询到的数据用StringBuffer穿成json。

2、设置了response编码格式UTF-8

3、最初用PrintWrite的write()方法把StringBuffer.toString()写出到前台

在eclipse下面没有任何问题(项目是UTF-8的),打成war包部署到Tomcat出现乱码,最初以为是Tomcat的配置问题,最后把eclipse中server项目下Tomcat配置复制到Tomcat-home/config下面。结果还是一样。最后推测是运行时的编码格式不一样,用StringBuffer是char数组实现的,怀疑是在字符串toChar的时候转码了。(查找源码未找到)

解决办法:

OutputStream out = res.getOutputStream();

AppVO vo = new AppVO(status, message, obj);

byte[] bytes = vo.getJson().getBytes("utf-8");

out.write(bytes);

据说byte[]要比char[]快,char存在编码问题。

如果有哪位大侠知道为什么会乱码。请告诉小弟。


部署到Tomcat下乱码

标签:

原文地址:http://my.oschina.net/u/1380822/blog/482078

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!