eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

한글깨짐
  • 작성자

    이*완

  • 작성일

    2012-11-24 23:56:08

  • 조회수

    2,696

  • 구분

    실행환경

  • 진행상태

    완료

질문

이클립스는 utf8, web.xml도 encoding을 utf8로
MySQL의 테이블도 DEFAULT CHARSET=utf8로
iBatis xml파일도 encoding을 utf8로 세팅이 되어 있습니다.

DB에 직접 insert할 때 한글데이타가 잘 저장됩니다.

eGovFrame 샘플프로그램과 DB데이타를 다운받아 실행하면
조회시 한글이 잘 나옵니다.

그런데 조회한 내용을 한글로 update하여 저장하면
첨부와 같이 ???로 다 바뀝니다.(DB도 ???로 바뀜)

왜 그런가요?

첨부파일
답변

안녕하세요.. 이완완님..

WAS나 tomcat의 경우도 한글 파라미터 인코딩을 지정하셔야 합니다.

사용하시는 WAS의 문서나 벤더에 문의하셔서 설정을 확인하시면 되실 것 같습니다.

tomcat의 경우는 GET 파라미터의 경우 conf/server.xml 상에 다음과 같이 URIEncoding을 지정하셔야 합니다.
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"/>

POST의 경우는 web.xml에 다음과 같은 filter가 등록되어 있으면 한글처리에 문제가 없습니다.
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<javaee:param-name>encoding</javaee:param-name>
<javaee:param-value>utf-8</javaee:param-value>
</init-param>
</filter>

이 경우 이외에는 실제 DB 테이블 상에 인코딩이 다른 경우일 수도 있으니...

Controller 부분에서.. 파라미터를 로그 상에 찍어 보시면

어느 부분의 문제인지 확인하실 수 있습니다.

그럼.. 즐거운 하루되십시오.
감사합니다.

이 페이지의 구성

묻고 답하기