Technical Note/JAVASCRIPT & JQUERY

jsp웹에서 ajax 함수를 호출하여 서버로 한글 파라미터를 전송하면 한글이 깨집니다.


AJAX가 기본적으로 파라미터를 UTF-8로 인코딩하여 전송을 한다고 하더군요.


이것 때문에 몇일 고생했네요..


이것저것 해보고, 괜히 톰캣도 만지작거리기도 하다가 결국...


비베스크립트 써서 Hex코드 변환하는 방식으로 해결을 했지만..


쌩뚱맞게 왠 비베인가 싶어서..다시 방법을 찾다가 결국 아주 간단하게 해결을 봤네요.


파라미터를 보내는 jsp단에서 해당 파라미터를 다음과 같이 처리합니다.


escape(encodeURIComponent('한글파라미터'));


XMLHttpRequest의 send함수를 통해서 스트럿츠 단으로 파라미터를 전송하게 되면..


스트럿츠(Action클래스)에서는 이 UTF-8로 날아온 파라미터를 다시 디코딩을 해줍니다.


URLDecoder.decode('받은파라미터', "UTF-8");