问题描述
1、jsp、java类、数据库、编码格式都是UTF-8,为什么插入数据库的中文是乱码呢hibernate.cfg.xml链接也加编码格式了<propertyname="connection.url">jdbc:mysql://xxxxxx/aras?useUnicode=true?characterEncoding=utf8</property><propertyname="connection.useUnicode">true</property><propertyname="connection.characterEncoding">UTF-8</property>有人遇到过此情形的问题吗,请指教
解决方案
解决方案二:
看一下你的mysql安装文件mydefault-character-set=是utf-8么两者改的一样后就没乱码了
解决方案三:
乱码问题一直是编程中的一个很令人头痛的问题,不过也有几种解决措施,在ssh三大框架中,可以利用Spring自带的过滤器进行转码,在web.xml配置文件里面进行配置即可<!--spring自身的过滤器--><filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>GBK</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>*.do</url-pattern></filter-mapping><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>*.jsp</url-pattern></filter-mapping>其次,统一所以页面的编码,MYSQL的话,安装的时候一定要选对编码!
解决方案四:
乱码的话,首先要分析是插入之前是乱码,还是插入后数据库导致的乱码。确定原因后,如果是插入数据库时乱码了,那就是代码问题,2楼的方法可以试试,一般的话,框架配置了,对于乱码都会很好的控制。如果是插入时数据不是乱码,那就是数据库没有设置好,所以可以试试一楼的代码。
解决方案五:
用一下楼上的方法,然后看看mysql的各项编码都要是utf8,应该就可以啦,这问题确实累人