как получить китайский иероглиф из MSSQL с помощью JAVA и mybatis

Я делаю программу на Java и пытаюсь получить китайский иероглиф из MSSQL, и я использую Mybatis вместо чистого класса jdbc. Итак, я установил файл xml для настройки основной информации.

<transactionManager type="JDBC"/>
        <dataSource type="POOLED">
            <property name="driver" value="${source.db.driver.class}" />
            <property name="url" value="${source.db.url}" />
            <property name="username" value="${source.db.username}" />
            <property name="password" value="${source.db.password}" />
            <property name="driver.encoding" value="EUC-KR"/>
        </dataSource>

Все работает нормально. Однако все китайские иероглифы, которые я получаю, представляют собой наборы символов, а не идеальный китайский иероглиф... Как я могу это исправить??


person heesu    schedule 17.10.2017    source источник
comment
Можете ли вы предоставить код, с помощью которого вы извлекаете данные? А также то, как вы его выводите. Возможно, ваш код не читает его как UTF-8 или что-то в этом роде.   -  person Zabuzard    schedule 17.10.2017
comment
driver.encoding=UTF8 в соответствии с документацией или, точнее, <property name="driver.encoding" value="UTF8" /> согласно mybatis.org/mybatis-3/configuration. HTML. Java должна быть в порядке с UTF-8, если вы не выплевываете ее на терминал cmd, тогда вы можете попробовать другой механизм вывода. stackoverflow.com/a/24841904/3196753   -  person tresf    schedule 17.10.2017
comment
Я добавил ‹property name=driver.encoding value=UTF8 /› ниже. но сообщение об ошибке Причина: com.microsoft.sqlserver.jdbc.SQLServerException: Ошибка входа для пользователя ''. выходит   -  person heesu    schedule 17.10.2017
comment
@heesu — проверьте типы данных столбцов, содержащих китайские иероглифы. Если они NVARCHAR (Unicode), то указание кодировки «EUC-KR» почти наверняка не сработает. Попытка использовать кодировку UTF-8 также, вероятно, будет проблематичной, поскольку SQL Server использует кодировку UTF-16LE, а не UTF-8. (Кроме того, при публикации комментария в качестве ответа обязательно используйте @... упоминание, как я сделал в начале этого комментария.)   -  person Gord Thompson    schedule 17.10.2017
comment
Привет, ты решил это?   -  person JLT    schedule 06.02.2018