삶 가운데 남긴 기록 AACII.TISTORY.COM
Spring Web Project 한글 설정 본문
html 파일에 한글 설정
<head>
<!-- HTML5의 경우 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- XHTML의 경우 -->
<meta charset="utf-8">
</head>
server.xml 한글 설정
<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" />
GET방식에서는 질의 문자열들을 URI에 포함되기 때문에 URI인코딩 처리 작업을 해야 합니다.
server.xml 파일에 URIEncoding="UTF-8" 프로퍼티를 설정합니다.
web.xml 한글 설정
<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>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
POST 전송 방식은 요청 body에 담아 전달됩니다.
CharacterEncodingFilter는 http상 주고받는 데이터의 헤더 값을 인코딩합니다.
Servlet에서 request.setCharacterEncoding("utf-8"); 처리와 동일한 처리입니다.
Spring Security설정이 있는 경우 한글 필터 설정이 springSecurityFilterChain 앞 쪽에 위치해야 합니다.
servlet에서 한글 처리
/* 요청정보 Body에 있는 문자열들을 인자값으로 지정한 문자코드로 인코딩 */
request.setCharacterEncoding("UTF-8");
/* 응답정보 문자열들을 인자값으로 지정한 문자코드로 인코딩 */
response.setContentType("text/html;charset=UTF-8");
. jsp 파일에서 한글 처리
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" language="java" %>
이 태그는 서블릿에서 response.setContentType("text/html;charset=UTF-8") 처리와 유사한 기능을 수행합니다.
dispatcher-servlet.xml 에서의 설정
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
<property name="contentType" value="text/html; charset=UTF-8"/>
</bean>
728x90
'DEV&OPS > Java' 카테고리의 다른 글
Spring MVC 프로젝트 구조 (0) | 2023.01.19 |
---|---|
Spring MVC 다국어 처리 (0) | 2023.01.18 |
Spring MVC maven jdk11 tomcat9 mysql5 mybatis3 설정 (0) | 2023.01.17 |
Spring AOP (0) | 2023.01.16 |
Spring 어노테이션 (0) | 2023.01.13 |