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

web项目存数据到数据库,中文乱码,解决过程

时间:2017-08-06 22:02:47      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:amp   logistic   ted   127.0.0.1   数据   span   tab   style   web项目   

排查原因:

打断点,查看到底是在执行存数据库操作之前就已经乱码了,还是存数据库操作后乱码的。

前者解决方案:

在web.xml里面加上:

<filter>
   <filter-name>encodingFilter</filter-name>
   <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
   <async-supported>true</async-supported>
   <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>encodingFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>
在配置jdbc数据源的时候加上:
jdbc:mysql://127.0.0.1:3306/logistics?useUnicode=true&amp;characterEncoding=UTF-8
存数据库操作后乱码,解决方案:
登录数据库,执行如下sql:

show variables like ‘character%‘;

结果:

| character_set_client     | utf8                                                   |

| character_set_connection | utf8                                                   |

| character_set_database   | latin1                                                 |

| character_set_filesystem | binary                                                 |

| character_set_results    | utf8                                                   |

| character_set_server     | latin1                                                 |

| character_set_system     | utf8                                                   | 

说明在安装数据库的时候,character_set_database,character_set_server编码格式设置错误。

解决:

找到mysql安装路径下的my.cnf文件在[mysqld]下添加如下两行:

character_set_server=utf8 
init_connect=‘SET NAMES utf8‘

再次查看,问题解决:

| character_set_client     | utf8                                                   |

| character_set_connection | utf8                                                   |

| character_set_database   | utf8                                                   |

| character_set_filesystem | binary                                                 |

| character_set_results    | utf8                                                   |

| character_set_server     | utf8                                                   |

| character_set_system     | utf8    

web项目存数据到数据库,中文乱码,解决过程

标签:amp   logistic   ted   127.0.0.1   数据   span   tab   style   web项目   

原文地址:http://www.cnblogs.com/lxl57610/p/7295817.html

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