JDBC和MySQL在我的项目中工作得很好,除了重音字符。这是我用来访问数据库的URL:
jdbc:mysql://localhost:3306/dbname?useUnicode=yes&characterEncoding=UTF-8
假设一个resultSet = preparedStatement.executeQuery()
,然后是一个System.out.println(resultSet.getString("text_with_accents"));
。存储在数据库中的是àèìòù
(注意,我已经在数据库及其所有表中设置了正确的编码),但我得到的是?????
。
有办法解决这个问题吗?
尝试像一样更改您的url
url="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF-8"
&
必须表示为&
可能。。。
- 你有utf8编码的数据(好)
SET NAMES latin1
有效(默认,但错误)- 该列已声明为
CHARACTER SET latin1
(默认值,但错误)