2 u013829202 u013829202 于 2015.06.09 17:05 提问

从前台传过来一个json,控制器没乱码,service乱码?求指导

今天遇到一个特别奇怪的问题。 从前台传过来一个json。到controller接收时,没有乱码。但是传到service层,拼sql就乱码了,打印的sql中文乱码了。 各种处理乱码的方式都使了还是不好使。 大神,谁遇到过? 可以是什么原因导致的? 给小弟一些建议吧!

7个回答

newstone001
newstone001   2015.06.09 17:08

你的controller 和 service 的文件编码是不是一样的?

网站前端开发工程师 HTML5 CSS3 平板网页开发
http://jobs.zhaopin.com/773356571250019.htm

u013829202
u013829202 service需要处理吗? 怎么处理?
2 年多之前 回复
qq_16168871
qq_16168871   2015.06.09 17:08

前台、后台都处理乱码了吗?

qq_16168871
qq_16168871 回复觅夜的黑: http://zhujinguo.iteye.com/blog/730305看有没有适合的
2 年多之前 回复
u013829202
u013829202 都处理了,utf-8的,还是不行
2 年多之前 回复
gamefinity
gamefinity   Rxr 2015.06.09 18:44

编码方式不同。比如,你的json是utf8的,但是你拼SQL的时候,sql用的是gbk的,因此你直接把utf8的数据连到gbk的数据中,就乱码了

kingbox000
kingbox000   2015.06.09 19:06

有一种可能是你的数据库客户端的编码不是utf-8

cuiwei1026522829
cuiwei1026522829   Ds   Rxr 2015.06.09 19:17

看看数据库客户端的编码是多少和json的要统一

beacon_2011
beacon_2011   Rxr 2015.06.10 15:33

看看action和service文件的编码方式,然后看看action和service接字符串时候设的编码方式是不是一样的

Juforg
Juforg   2015.06.10 16:50

主要是你拼接sql的时候 注意下 new String(baos.toByteArray(),"UTF-8");
即便是 stringbuffer 也要注意

Juforg
Juforg append(tmpStr.getBytes("UTF-8"))
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片