spring mvc 프로젝트 한글설정(utf8)

개발환경: windows10, sts, jdk1.8, tomcat9


Related Posts

1.STS로 Spring 프레임워크 개발환경셋팅 2.Spring MVC 프로젝트를 생성하여 톰캣에서 실행하기 3.spring mvc 프로젝트 한글설정(utf8)

4.Windows10pro docker 설치하기 5.Docker에서 mysql설치하고 접속해보기

6.Spring 프로젝트 mysql접속 junit 테스트 하기 7.SpringFramework MyBatis MySQL 연동하기


스프링프로젝트 jsp에서 한글 깨짐현상

스프링 프로젝트를 새로 만들면 jsp에서 한글이 보통 위 이미지 처럼 깨진다.

UTF8 셋팅을 통해 jsp에서 한글 깨짐을 해결 할 수 있다.

1.jsp에 utf-8설정

한글이 깨지는 jsp의 최상단에 아래코드를 삽입하자

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

jsp에서 utf-8셋팅

jsp 한글동작 확인

1번 설정만 하면 일단 jsp에서 한글깨짐은 해결이 된다. 하지만 post, get 리퀘스트 등등 스프링 프로젝트는 다양한 부분에 utf-8설정이 필요하다. 나중에 하기 귀찮으니 미리 한꺼번에 설정해보도록 하자.

2.스프링 웹 프로젝트의 web.xml에 UTF-8 셋팅

아래 내용을 스프링 웹 프로젝트의 web.xml에 추가한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!-- This is Filter -->
<filter>
<filter-name>encodingFilter</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>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

스프링프로젝트의 web.xml에 utf-8셋팅

3.tomcat의 server.xml에 utf-8 셋팅

아래 내용을 아파치 톰캣의 server.xml에 적용하자. Connector port 태그를 찾아서 URIEncoding 프로퍼티를 추가해야 한다.

1
2
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8" />

tomcat server.xml에 utf-8셋팅

4.html 파일에 utf-8 셋팅

html에도 utf-8 설정이 필요하다. head 태그 영역을 아래처럼 설정하면 된다.

1
2
3
4
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Home</title>
</head>

지금까지 스프링 프로젝트의 UTF셋팅을 해보았다. 기타 라이브러리가 추가됨에 따라 추가로 설정이 필요할 수는 있지만, 보통 위 정도만 해도 어느정도 한글 깨짐등의 문제를 해결 할 수 있다.