테이블에 MEDIUMBLOB
필드가있는 데이터베이스가 있고 각 테이블에 ENGINE=InnoDB DEFAULT CHARSET=utf8
이 있습니다.MySQL, Java 및 UTF8
URL에 useUnicode=true&characterEncoding=UTF8&character_set_client=UTF8&character_set_database=UTF8&character_set_results=UTF8&character_set_server=UTF8&character_set_system=UTF8
으로 데이터베이스에 연결합니다.
(I이 같은 결과를 바로 useUnicode=true&characterEncoding=UTF8
으로 노력했다.)
내가 명령 줄에서 mysql
을 사용하여 데이터베이스의 값을 볼 때, 나는 비 ASCII 문자가 잘 볼 수 있습니다.
그러나 데이터베이스에서 문자열을 읽을 때 executeQuery()
getString()
나는 횡설수설합니다. 값을 올바르게 읽으려면 어떻게해야합니까?
나는 log4j를 사용하여 데이터베이스에 쓰고있는 문자열과 내가 읽은 문자열을 보여주고 있습니다.
그런 다음 어떻게 * 표시하고 있습니까? 웹 응용 프로그램이나 그와 유사한 것을 통해 데이터베이스에 올바른 데이터를 가져 오면 브라우저에 전송되도록 인코딩해야 할 때 뭔가 잘못 될 수 있습니다. –
(나는 "횡설수설 (gabberish)"에 의해 비 ASCII 문자를 예상 한 모든 종류의 괴상한 문자를 의미한다고 가정하고 있습니다. [mojibake] (http://en.wikipedia.org/wiki/Mojibake) 다시 물음표 만 보니 다른 문제입니다.) –
콘솔을 사용하고 있습니까? 기기가 문자를 표시하는 대상은 무엇입니까? –