Вопросы/квадраты вместо русских букв в MySQL базе данных

244
07 октября 2017, 18:50

Здравствуйте. Делаю тестовый проект с аутентификацией VK на Spring MVC, вытаскиваю имя и фамилию пользователя на русском языке в переменную, а затем через JDBC Template передаю в базу. В консоли Eclipse имя фамилия выводится нормально, а в БД только вопросы/квадраты. Квадраты, если делаю вот такое:

String s = user.getFirstName() + " " + user.getLastName();
userName = new String(s.getBytes(), "UTF8");

Вопросы, если второй строчки не делаю.

Что уже сделано:

В БД: В таблице прописано charset:utf8, collation: utf8_general_ci

команда SET NAMES utf8mb4

В проекте В настройках jdbc соединения прописано jdbc.url=jdbc:mysql://localhost/mydatabase?useUnicode=yes&characterEncoding=UTF-8

В конфиге добавлен фильтр

    @Override
    protected Filter[] getServletFilters() {
        Filter[] filters;
        CharacterEncodingFilter encFilter;
        HiddenHttpMethodFilter httpMethodFilter = new HiddenHttpMethodFilter();
        encFilter = new CharacterEncodingFilter();
        encFilter.setEncoding("UTF-8");
        encFilter.setForceEncoding(true);
        filters = new Filter[] { httpMethodFilter, encFilter };
        return filters;
    }

Что еще можно посмотреть?

Answer 1

Проблема решена. Надо было прописать не

jdbc.url=jdbc:mysql://localhost/mydatabase?useUnicode=yes&characterEncoding=UTF-8

а просто

jdbc.url=jdbc:mysql://localhost/mydatabase?characterEncoding=UTF-8
READ ALSO
Получить латинскую букву по ID

Получить латинскую букву по ID

Например есть метод

219
Интерфейсы в MVP

Интерфейсы в MVP

Это наверное тысячный вопрос по MVPПеречитал очень много статей, пересмотрел многие исходники из GitHub

254
Исключение javax.net.ssl.SSLHandshakeException: Handshake failed при запросе на сервер

Исключение javax.net.ssl.SSLHandshakeException: Handshake failed при запросе на сервер

При отправке запроса вот сюда https://jsonplaceholdertypicode

365
Комбинации из регулярных выражений Java

Комбинации из регулярных выражений Java

Я не могу понять, каким образом комбинировать регулярные выражения при использовании методаmatches

219