본문 바로가기

프로그래밍/spring

전송 시 한글 입력이 깨지는 문제

- spring web mvc 제작중

- sts4 

- tomcat 9 

- jdk 1.8

 

utf-8이라고 설정을 웹서버가 받아들여야 하는 데 그러지 못하고 iso-8859-1 방식으로 인코딩을 하게 되면 

사용자가 한글을 입력해서 서버로 보낼 때 한글이 깨지는 현상이 발생한다. 그 해결법은 아래와 같다.

 

1. 톰캣

2. Servlet

 

1. 매번 적어주는 경우 

request.setCharacterEncoding("UTF-8")

 

2. web.xml(톰캣)으로 전체 처리

아래단 src > main > webapp > WEB-INF > web.xml에 아래 코드를 넣어준다

 

<filter>
    <filter-name>charaterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>charaterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>