JDBC and MySQL work just fine in my project except when it comes down to accented characters. This is the URL I use to access the database:
jdbc:mysql://localhost:3306/dbname?useUnicode=yes&characterEncoding=UTF-8
Suppose a resultSet = preparedStatement.executeQuery()
, and then a System.out.println(resultSet.getString("text_with_accents"));
. What's stored in the database is àèìòù
(note that I've already set the right encoding in the database and all its tables), but what I get is ?????
.
Is there a way to fix this?
Probably...
SET NAMES latin1
was in effect (default, but wrong)CHARACTER SET latin1
(default, but wrong)Try to change your url like
The
&
must be represented as&