본문 바로가기

프로그래밍/아두이노[Arduino]&라즈베리파이[Raspberry Pi]

HttpURLConnection 스프링 url 요청시 한글 깨짐 현상 해결 [안드로이드, 스프링]



안녕하세요 이번에는 안드로이드에서 HttpURLConnection을 이용하여 스프링 프레임워크로 데이터 전송 시 한글 깨짐에 대해서 간한다게 짚고 넘어가도록 하겠습니다.

 

 

안드로이드에서는 제대로 전달하지만 서버에서 로그를 찍어보면 한글이 깨지는 현상이 발생했습니다.

대체적으로 안드로이드에서 데이터 전송시 버퍼 리더를 수정하면 된다고 합니다

 

다음과 같이 charsetName을 UTF-8로 추가를 합니다.

in = new BufferedReader(new InputStreamReader(con.getInputStream(), "UTF-8"));

 

자 그리고 다시 로그를 찍어봐도 안된다면 스프링 설정을 의심해봐야 합니다.

 

저 같은 경우는 새 프로젝트 설정시 초기 설정을 제대로 하지 않아서.. 초보적인 실수를 했습니다.

 

스프링 프레임 워크에서 web.xml에 갑니다.

 

다음과 같이 설정을 추가합니다.

    <filter>
        <filter-name>characterEncodingFilter</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>
    </filter>
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 

그리고 나서 다시 로그를 확인하니 정상적으로 작동했습니다.

 

여러분들도 초보적인 실수를 하지 않도록 주의하세요~