728x90
반응형

 

회사 내 시스템에서 리뷰 관련된 시스템을 구축하면서

사용자들이(나조차도) 리뷰 내용에 이모지 사용을 많이 하기 때문에

테스트로 이모지 포함된 내용을 입력했더니 에러 발생!


에러 내용 :

### Cause: java.sql.SQLDataException: (conn=3899) Incorrect string value: '\xF0\x9F\x98\x85' for column

...생략


 

처음에는 기존 UTF-8로 세팅되어 있던

MariaDB의 테이블 해당 칼럼과 jdbc 등의 인코딩을 utf8_unicode_ci

변경하면 될 것으로 예상했지만

계~속 동일한 에러가 발생하는 상황이었다.

 

모두 원복 시킨 뒤 찾아낸 대안 방법.

(사용 중인 MariaDB 버전이 낮은 문제도 있고, 이미 운영 중인 설정에 대해

섣불리 변경하면 발생할 수 있는 문제점에 대해서도

고려해야 했기 때문에 위 방법은 포기)

 

차선책으로 리뷰내용에서 이모지 정규식을 통해 이모지> 유니코드로 변환하여 저장하고

프런트에서는 유니코드> 이모지로 변환하는 메서드를 활용하여 해결했다.

728x90
반응형

+ Recent posts