http://www.todayhumor.co.kr/board/view.php?table=programmer&no=13575&s_no=10975835&kind=member&page=1&member_kind=total&mn=520198
이 글 작성자인데요
제가 해결을 했어요.. 그런데 음... 좋지 않은 방법으로했어요 Spring MVC 프로젝트 jsp파일에 스크립트릿과 표현식을 넣어서 했어요
어떻게 했냐 하면은
저 keyword name이 검색어 입력받는 텍스트필드거든요. 저기서 value값을 temp1이라는 String 객체를 표현식으로 썼고
이건 스크립트릿인데 일단 getParameter로 keyword 값을 받았죠 그리고 받은 값을 decode 해주니까 안깨지더라고요
헐 위 사진은 너무 너비가 커서 글씨가 작은데
위 스크립트는 검색어 입력하고 검색 버튼을 눌렀을 때 이벤트 처리하는 스크립트인데 GET방식이라
URL 뒤에 파라미터를 붙여넣어줘요. 그런데 여기서 keyword 값을 encode해줬어요 이건 또 어디서 decode를 했냐하면
컨트롤러에서 decode를 해줬어요 자바에서 저 decode 메서드는 이제 쓰지말라는 배려까지해줬는데
이렇게 하는 거 말고 도저히 생각이 안났어요. 제가 하는 나름대로의 UTF-8을 다 해줬는데도 불구하고..
여기서 제가 궁금한건 두 가지 입니다.
1. 스크립트가 컨트롤러도 넘겨주는 데이터랑 파라미터 데이터랑 값만 같은 다른 데이터인가요?
위에 코드들을 보시면 decode를 두 번 해줬어요. 둘 중 하나만 하면 꼭 하나는 깨지더라고요
2. 대체 어느 부분에서 UTF-8 처리를 안해준걸까요........