Home > Database > Mysql Tutorial > SpringMVC+MyBatis+MySQL的中文乱码小结

SpringMVC+MyBatis+MySQL的中文乱码小结

WBOY
Release: 2016-06-07 15:35:11
Original
1301 people have browsed it

1、SpringMVC的Controller得到的是乱码: (1)在web.xml加上字符集过滤器: !-- Spring字符集过滤器 --filterfilter-nameSpringEncodingFilter/filter-namefilter-classorg.springframework.web.filter.CharacterEncodingFilter/filter-classinit-parampara

1、SpringMVC的Controller得到的是乱码:

(1)在web.xml加上字符集过滤器:

	<!-- Spring字符集过滤器 -->
	<filter>
		<filter-name>SpringEncodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>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>SpringEncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
Copy after login

(2)在JSP等页面上修改:charset=UTF-8"和pageEncoding="UTF-8"


2、Controller读取到的是正确的中文,但是保存到数据库后变成“??”

(1)修改数据库连接jdbc_url=jdbc:mysql://localhost:3306/mybatistest?useUnicode=yes&characterEncoding=UTF8("&":在xml文件中表示"&")

(2)修改数据库的字符集为utf-8:打开mysql根目录下my.ini(mysql5.6为my-default.ini,要把它copy一份命名为my.ini),在下面具体位置添加(或修改):

[mysqld]
character-set-server=utf8 
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
Copy after login

这样设置在我这边就没什么问题了。
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template