Хорошо, я стараюсь держать это коротким. У меня есть веб-сайт Java и база данных MySQL. Все использует кодировку UTF-8. Проблема в том, что если я попытаюсь вставить литовские буквы в базу данных, все буквы типа «ą č ę ė į ų ū» преобразуются в вопросительные знаки.Java Литовский кодировка символов
Insert code:
public static boolean addUser(UserEntity userEntity) {
Connection con = getDataBaseConnection();
PreparedStatement statement = null;
try {
if (userEntity.isIsActive()) {
booleanInt = 1;
} else {
booleanInt = 0;
}
if (con != null && !con.isClosed()) {
statement = con.prepareStatement("INSERT INTO users (login,"
+ " firstName,"
+ " lastName,"
+ " personalId,"
+ " isActive,"
+ " password)"
+ "VALUES(?,?,?,?,?,?)");
statement.setString(1, userEntity.getLogin());
statement.setString(2, userEntity.getFirstName());
statement.setString(3, userEntity.getLastName());
statement.setString(4, userEntity.getPersonalId());
statement.setInt(5, booleanInt);
statement.setString(6, userEntity.getPassword());
System.out.println(statement.toString());
//statement.executeUpdate();
return statement.execute();
}
} catch (Exception ex) {
System.out.println(ex);
} finally {
closeConnection(con);
return false;
}
Если мы печатаем для userEntity.getLogin, он распечатывает все с буквами, как должно быть. Скажем, его Мажейкяй. Если мы распечатаем подготовленный оператор SQL, он будет заменен. Java настроена на работу с UTF-8, GlassFish, базой данных.
Является ли таблица базы данных/столбцом, используя UTF8? Это похоже на дубликат: http://stackoverflow.com/questions/3828818/java-preparedstatement-utf-8-character-problem –
Возможный дубликат [Java-литовских букв] (http://stackoverflow.com/questions/ 7222475/Java-литовско-буквы) – Raedwald