在mybatis+spring mvc+spring开发中遇到的困扰两天的中文乱码问题(艰辛)
2018-03-02 14:39
555 查看
问题描述:
1.在保存输入的中文数据时,数据库保存为乱码;2.在mybitis的【debug】日志里可以看到正确的sql语句
可以看到输入的中文字无乱码
3.在mysql的控制台和sqlyog输入日志里的sql语句,能够正确执行
艰辛的解决流程:
1.一开始我以为是编码问题,于是我检查并修改了---jsp页面编码:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
--- 数据库连接加上默认字符集:jdbc:mysql://127.0.0.1:3306/xx?useUnicode=true&charaterEncoding=utf-8
--- 在web.xml里配置了过滤器设置的字符集为utf-8:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>
4000
encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
为了防止通过get方式导致的参数编码问题,通过str.equals(new String(str.getBytes("UTF-8"),"UTF-8"))为true来知道从页面获得的值得编码为utf-8,获得的参数的值编码并没有问题
---tomcat的默认URI编码:
[b]
[/b]
---数据库,表,字段的编码查看
[b]
[/b]
检查发现都没有问题,编码均为utf8
2.当所有的一切都做完时,我期盼的正确结果并没有来,啊啊啊啊啊啊,然后各种找,终于发现了我的数据库配置(my.ini)是罪魁祸首。为啥一开始没想到呢,因为以前用ssh框架时,并没有出现此类问题,导致我直接忽略了。。。
通过网上的寻找发现
---show variables like '%character%';//查看数据库编码设置
---修改方法:
在mysql的安装目录下的bin目录里找到my.ini,打开
在[client] 下添加:default_character_set = utf8
在[mysqld]下添加:character_set_server = utf8
一开始,修改了配置,重启mysql服务后发现并没有生效。。。
最后,把my.ini文件复制到mysql安装的目录,也就是和bin同级
大功告成!!!!!!!!!!!!!!
相关文章推荐
- 解决springmvc+mybatis+mysql中文乱码问题【转】
- SpringMVC + mybatis 传参中文乱码问题
- spring mvc +mybatis+spring +shrio 项目开发遇到的问题及解决方案。
- 解决springmvc+mybatis+mysql中文乱码问题【转】
- 解决springmvc+mybatis+mysql中文乱码问题【转】
- Maven+SpringMVC+Mybatis+ajax:后台传值到前台中文出现问号乱码问题
- 解决springmvc+mybatis+mysql中文乱码问题
- 解决springmvc+mybatis+mysql中文乱码问题
- 【SSM】解决springmvc+mybatis+mysql中文乱码问题
- 解决springmvc+mybatis+mysql中文乱码问题【转】
- 解决springmvc+mybatis+mysql中文乱码问题【转】
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
- JSP开发过程遇到的中文乱码问题及解决方案
- Spring MVC @ResponseBody返回中文字符串乱码问题
- JSP开发过程遇到的中文乱码问题及解决方案
- 开发过程遇到的中文乱码问题
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
- JSP开发过程遇到的中文乱码问题及解决方案
- JSP开发过程遇到的中文乱码问题及解决方案