您的位置:首页 > 编程语言 > Java开发

【SpringMVC系列三】 EasyUI +springMVC 乱码问题

2014-12-31 13:44 423 查看
存数据的时候以一种编码方式存,读数据的时候以一种编码方式读,如果不设置编码方式则按照默认的方式来。

前台提交数据乱码
在前台提交数据的时候,只要是提交汉字就会是乱码的形式存入数据库中(正常情况下应该是第一条数据样式),如下图第二条数据:



插入数据库乱码,经调试发现其调到action就乱码了,因此是前台传过来的乱码。
此时在web.xml里面添加配置设置成utf-8的编码格式就可以了:
<!-- 编码格式的设置 start 刘腾腾 -->
	<filter>
		<filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
<!-- 编码格式的设置 end 刘腾腾-->


加上org.springframework.web.filter.CharacterEncodingFilter过滤器处理就可以了。
通过这个问题总结一下:
首先所有的页面都要使用utf-8的编码格式,在eclipse中设置即可。
服务器加上过滤器
数据库也要采用utf-8的编码方式

其次,数据库乱码也是常见的问题:
1、mysql的文件,my.ini里面的编码格式:default-character-set=utf-8
2、mysql里的数据库和表也都设置为utf8_unicode_ci
3、连接数据库语句加上utf-8格式:jdbc:mysql://localhost/DBname?useUnicode=true&characterEncoding=utf-8

总结:
乱码问题是一些经典又细节的问题,经常见到,只要设置上我们需要的编码格式就会极少的出现这种现象,节省时间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: