首页 > 其他 > 详细

部署到Tomcat下乱码

时间:2015-07-22 14:56:09      阅读:253      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!