Как разобраться с записью кириллицы в БД?

В таблице из БД могу сохранить/редактировать данные, если ввожу русский текст, то сохраняет в таком виде:
Ð²Ð¾Ñ Ñак ÑоÑÑанÑеÑÑÑ ÑÑÑÑкий ÑекÑÑ
БД - MySQL, драйвер connector/J-driver 5.1.27, в самой базе у полей кодировка utf-8 страницы jsf также на этой кодировке.

Что куда дописать, думаю найдутся те, у кого были похожие проблемы.
  • Вопрос задан
  • 3396 просмотров
Пригласить эксперта
Ответы на вопрос 3
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
первое - кодировка веб страницы.
второе - collation у самой базы.
третье - кодировка таки да, поля.
Ответ написан
@DiLighteR
страницы jsf также на этой кодировке

скорее всего вы имеете ввиду, что в начале xhtml страницы есть что-то типа такого
<?xml version='1.0' encoding='UTF-8' ?>
это просто говорит xml парсеру, в какой кодировке записана сама исходная страница, и не имеет отношения к тому, в какой кодировке передаются введенные данные на сервер.

попробуйте фильтр, который для всех запросов принудительно устанавливает кодировку utf-8
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        chain.doFilter(request, response);
    }

    // ...
}


если не поможет, нужно настроить кодировку запросов на вашем сервере приложений.
Конкретно мне в случае с glassfish помог вот такой glassfish-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
  <class-loader delegate="true"/>
  <jsp-config>
    <property name="keepgenerated" value="true"/>
  </jsp-config>
  <glassfish-web-app>
  <parameter-encoding default-charset="UTF-8" />
</glassfish-web-app>
</glassfish-web-app>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Zaycev.net Челябинск
от 65 000 до 100 000 руб.
Ньютон Финанс Иркутск
от 65 000 руб.
SaveTime Москва
от 140 000 до 200 000 руб.
22 февр. 2019, в 00:35
2000 руб./за проект
21 февр. 2019, в 21:38
1000 руб./за проект
21 февр. 2019, в 19:49
200000 руб./за проект