码迷,mamicode.com
首页 > 数据库 > 详细

springmvc mybatis mysql blob中文乱码问题处理

时间:2015-09-02 07:04:18      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:

近日使用ajax请求springmvc后台查询mysql数据库,页面显示中文出现乱码

最初在mybatis配置如下

 

1
2
3
<select id="queryContentById"  resultType = "java.lang.String"  parameterType="String"  >
        select text from News where id=#{o} 
</select>

 

其中表News的text字段为blob类型

如此查出的text值在控制台中一直显示乱码。

之后google查找相关resultType=blob相关内容无果,遂将其改为resultType = "java.util.Map" ,且

 

1
2
byte[] b = (byte[]) map.get("text");
String s = new String(b,"utf-8");

 

打印出s,此时中文正常显示,但页面显示依旧乱码。

因此处为ajax请求,遂检查响应头信息,查出如下

 

Content-Typetext/html;charset=ISO-8859-1

 

由于数据库中统一为编码为utf-8,故修改响应头信息

 

1
2
3
4
5
6
7
@RequestMapping(value = "/queryContentById", method = RequestMethod.GET,produces = "text/plain;charset=UTF-8")
public @ResponseBody String queryContentById(@RequestParam("id") String id) throws SQLException, UnsupportedEncodingException {
    Map map = (Map) ndrService.queryContentById(id);
    byte[] b = (byte[]) map.get("text");
    String s = new String(b,"utf-8");
    return s;
}

 

请参看以下资料:

http://www.itnose.net/detail/6074493.html

springmvc mybatis mysql blob中文乱码问题处理

标签:

原文地址:http://www.cnblogs.com/fuhang/p/4777501.html

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