본문 바로가기
자바/스프링 | 웹

UTF-8, CharacterEncoding

by 참새는 짹짹 2021. 1. 15.

서블릿을 공부하다 보면 setCharacterEncoding("UTF-8")

을 하며 문자 인코딩을 "UTF-8"로 세팅하는 경우를 볼 수 있고

이를 하지 않으면 한글이 깨지는 걸 볼 수 있다

UTF-8에 대한 정의를 살펴 보면

  • UTF-8
    • 유니코드를 위한 가변 길이 문자 인코딩 방식 중 하나로

      인터넷 사이트에서 가장 많이 쓰이는 인코딩

  • 유니코드
    • 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록

      설계된 산업 표준

다음과 같기 때문에

서블릿에서도 UTF-8 을 설정하게 되는데

정확히 어떨 때 사용하는지 알아보자

response

response.setCharacterEncoding("UTF-8");

응답 인코딩을 UTF-8로 설정한다

즉, 출력 방식을 UTF-8로 한다

response.setContentType("text/html; charset=UTF-8");

응답 헤더 content-type에 charset으로 UTF-8을 설정함으로

응답 문서가 UTF-8로 인코딩되어 있음을 브라우저에게 알려준다

이를 jsp에서는 페이지 지시어에서 선언한다

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

request

request.setCharaterEncoding("UTF-8");

사용자로부터 온 요청을 ( GET 요청의 쿼리스트링이나 POST 요청의 파라미터 )

UTF-8 로 인코딩하여 읽어들임

보통 서블릿 필터에서 쓰여

모든 서블릿에 적용되도록 한다

참고


서블릿/JSP 강의 19 - 한글 입력 문제
좋아요~ 꾸욱...조회수가 안나오던 이 강의가 하루 2~3 조회수가 나오는 쾌거(?)를 거두었습니다.조회수가 나오는 이상 꾸준히 업로드 해보도록 하겠습니다. 감사합니다.
https://youtu.be/iJ5cwyYgiu0

'자바 > 스프링 | 웹' 카테고리의 다른 글

스프링부트, 그래들 프로파일  (0) 2021.02.10
스프링 MVC 구조 및 동작  (0) 2021.01.31
Autowired 의존관계 주입  (0) 2021.01.29

댓글