The reference to entity "charset" must end with the ';' delimiter. 에러

국물빌런·2020년 3월 2일
0

일단 현상은 jdbc커넥션 스트링을
jdbc:mysql://localhost:3306/BBS?useSSL=false로 접속을 하니 윈도우 환경에서 케릭터셋이 다 깨져서 들어가는 현상이 나타났다.
디비 케릭터셋을 확인해보니 다 utf8이다.
결국 클라이언트의 케릭터셋이 문제라는건데..
인터넷을 찾아보니 커넥션 스트링에 utf8로 옵션을 주는게 있었다. 아래와 같다.
jdbc:mysql://localhost:3306/BBS?useSSL=false&serverTimezone=Asia/Seoul;useUnicode=true&characterEncoding=utf8
근데 저렇게 넣으니 JDBC커넥션 테스트는 되는데 datasource로 만들어서 커넥션을 하니 실패했다.
이것도 시간을 좀 낭비하다 보니 XML에서 & 문자를 참조자로 인식해서 파싱에러가 난다는 것이었다.
아..딱 보는 순간 눈치챘어야 했는데..ㅋㅋ
여튼 해결법은 & 문자를 &로 바꿔줘야 한다. 아래와 같다
jdbc:log4jdbc:mysql://localhost:3306/BBS?useSSL=false&useUnicode=true&characterEncoding=utf8

profile
국물을 달라

0개의 댓글