Intellij вывод в консоль вопросительные знаки вместо русских букв. Данные получает из PostgreSQL
Intellij Idea Console у меня вывод русские буквы нормально. Но вот когда я вывожу данные на русском, которые взял из базы данных сделанной на PostgreSQL я получаю вот что:
Connected to the target VM, address: '127.0.0.1:55764', transport: 'socket'
org.postgresql.jdbc.PgConnection@46daef40
�������� ������
�������� ����������� �����������
�������� ����������� ����������������
�������� ����������� ������������
Disconnected from the target VM, address: '127.0.0.1:55764', transport: 'socket'
Process finished with exit code 0
Собственно сам код:
try {
Class.forName("org.postgresql.Driver");
String url = "jdbc:postgresql://localhost:5432/Lab1?useUnicode=yes&characterEncoding=windows-1251";
Properties autorization = new Properties();
autorization.put("user","postgres");
autorization.put("password","k3st1bnx");
connection = DriverManager.getConnection(url,autorization);
} catch (SQLException | ClassNotFoundException e) {
System.out.println("Error");
throw new RuntimeException(e);
}
if (connection !=null)
System.out.println(connection);
else
System.out.println("Null!");
Statement statement = connection.createStatement();
String SQL = "select * from symptoms order by sickid";
ResultSet result = statement.executeQuery(SQL);
while (result.next()) {
System.out.println(result.getString(2))
}
Ответы (2 шт):
Автор решения: newman
→ Ссылка
Вот эта строчка как-то нелогично выглядит.
useUnicode=yes&characterEncoding=windows-1251
Попробуйте вместо "windows-1251" указать "UTF-8"
И очень желательно проверить чтобы кодировка для вашей таблицы так же стояла UTF-8. И чтобы данные туда были записаны тоже в формате UTF-8
