IT/JSP

[Java/JSP] tomcat post/get 방식 한글깨짐 UTF-8 Encoding 문제 해결방법

미녀개발자 2019. 3. 29. 13:41
반응형

 

[web.xml 파일에 filter 추가]

1) 스프링 프레임워크인 경우

  <filter>
   <filter-name>Set Character Encoding</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>Set Character Encoding</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>

2) 스프링이 아닌경우

	<!-- 한글설정 필터추가 -->
	<filter>
		<filter-name>Set Character Encoding</filter-name>
		<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>utf-8</param-value>
		</init-param>
	</filter>

	<filter-mapping>
		<filter-name>Set Character Encoding</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<!-- 한글설정 END -->

 

[jsp 파일 상단에 추가]

<%@ page contentType="text/html; charset=utf-8" %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

 

[server.xml 파일에 추가]

<Connector 
               port="8080"               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000" 
               disableUploadTimeout="true" useBodyEncodingForURI="true" URIEncoding="utf-8"/>
​

 

web.xml에 filter 설정이 힘든경우, 각 jsp 파일에 아래 코드 추가

request.setCharacterEncoding("utf-8");

 

이 모든 세팅을 하면 한글깨짐이 잡힌다.

반응형