标签:
存数据的时候以一种编码方式存,读数据的时候以一种编码方式读,如果不设置编码方式则按照默认的方式来。
前台提交数据乱码
在前台提交数据的时候,只要是提交汉字就会是乱码的形式存入数据库中(正常情况下应该是第一条数据样式),如下图第二条数据:
插入数据库乱码,经调试发现其调到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
总结:
乱码问题是一些经典又细节的问题,经常见到,只要设置上我们需要的编码格式就会极少的出现这种现象,节省时间。
标签:
原文地址:http://blog.csdn.net/liutengteng130/article/details/42272235