Кодировка символов JDBC

У меня есть веб-приложение Java, работающее на GlassFish 3 и JPA (EclipseLink) на MySQL. Проблема, с которой я сталкиваюсь, является этим, если я сохраняю объекты к базе данных с update() метод, String поля теряют целостность; '?' показан вместо некоторых символов.

Сервер, страницы и база данных настроены для использования UTF-8.

После того, как я отправлю данные формы, следующая страница показывает данные правильно. Кроме того, "кажется" в отладке NetBeans что String свойство текущего объекта хранит правильное значение также. Не знайте, можно ли отладке NetBeans доверять; мог бы быть то, что это декодирует правильно, однако это неправильно.

22
задан BalusC 31 May 2013 в 16:24
поделиться

2 ответа

Кодировку определяет JDBC, а не JPA:

jdbc:mysql://localhost:3306/administer?characterEncoding=utf8
50
ответ дан 29 November 2019 в 03:42
поделиться

Я решил эту проблему следующим образом: Я использовал интерфейс администратора GlassFish, чтобы добавить это свойство в настройки моего пула соединений:

characterEncoding = UTF-8

12
ответ дан 29 November 2019 в 03:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: