문제는 get방식으로 파라메터를 전달 해야 할경우가 생기면 아래 와 같이 처리 한다.
jsp 에서는 get방식이든 post방식이든 한글로된 파라미터 값을 넘겨줄때 그냥 주면 한글이 깨진다.
ajax가 파라미터를 utf-8로 전송하기때문인데 해결방법은
파라미터를 보낼 자바스크립트에서
escape(encodeURIComponent('한글'));
이렇게 인코딩을 하고
escape(encodeURIComponent('한글'));
이렇게 인코딩을 하고
요청처리될 액션 페이지에서
URLDecoder.decode(request.getParameter("searchText"), "UTF-8");
이렇게 받으면된다.
===============================================================
escape, encodeURIComponent 둘중에 하나만 사용하려하면 한글이 깨져서 사용할 수 가 없다.
영어만 기억하는 더러운 세상
response.setHeader("Content-Type", "application/octet-stream; charset=euc-kr");
response.setHeader ("Content-Disposition", "attachment; filename="+URLEncoder.encode(fname,"UTF-8")+";");
이렇게 하면 한글파일 다운로드시 안깨진 파일명을 볼 수 있다.
URLDecoder.decode(request.getParameter("searchText"), "UTF-8");
이렇게 받으면된다.
===============================================================
escape, encodeURIComponent 둘중에 하나만 사용하려하면 한글이 깨져서 사용할 수 가 없다.
영어만 기억하는 더러운 세상
response.setHeader("Content-Type", "application/octet-stream; charset=euc-kr");
response.setHeader ("Content-Disposition", "attachment; filename="+URLEncoder.encode(fname,"UTF-8")+";");
이렇게 하면 한글파일 다운로드시 안깨진 파일명을 볼 수 있다.