形成中文乱码的缘由可能Eclipse开发环境中,也多是出在了Hibernate存取数据时,也有多是数据库的系统编码问题。 java
若是是Eclipse的问题,那就对如下各项进行设置,便可排除问题。 mysql
设置eclipse相关编码为UTF-8:
修改工做区默认编码,位置:windows--perferences--general--workspace
修改JSP文件默认编码,位置:windows--perferences--web--jsp files
修改JSP文件默认编码,位置:windows--perferences--general--content types--text--jsp file
修改配置文件默认编码:位置:windows--perferences--general--content types--text--java properties file
设置自动格式化代码:选中format source code--format all lines,位置:windows--perferences--java--editor--save actions
web
若是是问题是在Hibernate读写数据时, sql
要对hibernate链接数据库的xml配置文件添加两项: 数据库
<property name="connection.useUnicode">true</property>
< property name="connection.characterEncoding">utf8</property> windows
或者对链接的url增长参数,以下: eclipse
<property name="hibernate.connection.url">
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
< /property> jsp
问题也多是数据库的事,我此次都是由于MySQL的系统编码不对形成的。 编码
网上说MySQL默认的字符集不是utf8,而是latin2,它是在C:\Program Files\MySQL\MySQL Server 5.1下的my.ini文件中体现的,咱们能够对其修改,将两处default-character-se的值改成utf8便可(注意不是utf-8)。改后,重启一下MySQL的服务,在开始菜单的MySQL命令行客户端(MySQL command Line client)输入 url
SHOW VARIABLES LIKE '%character_set_%'
若是显示
character_set_client, utf8
character_set_connection, utf8
character_set_database, utf8
character_set_filesystem, binary
character_set_results, utf8
character_set_server, utf8
character_set_system, utf8
character_sets_dir, E:softProgrammysqlmysql-5.0.22-win32sharecharsets
则表示修改默认字符集为utf8成功