我有一个项目,我从HTML文件中抓取一些数据,将其放入MySQL数据库,然后再读出并显示给用户。每当servlet向DB中插入某些内容时,“£”符号将作为inserted插入,并在再次读出时显示为。调试MySQL字符集错误
该应用程序使用Java(使用Spring)和JPA使用EclipseLink作为JPA实现编写。
我已经将问题缩小到插入到MySQL中,因为当我在控制台中查看表时,问号出现。
我已经配置MySQL使用UTF-8为标准编码在my.cnf
[mysqld]
default-character-set=utf8
如果我运行
SHOW TABLE STATUS;
我可以看到,在表上的核对是
utf8_general_ci
这表明字符集也是UTF-8。
也有这样的: mysql> SHOW CREATE DATABASE gate;
+----------+---------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------+
| gate | CREATE DATABASE `gate` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec)
因此,与Java是完全支持Unicode(?)和我的数据库被设置为UTF-8我在哪里可以寻找错误配置/错误?