sitelink1 | https://blog.naver.com/alucard99/221294833853 |
---|---|
sitelink2 | |
extra_vars5 | |
extra_vars6 |
톰캣 서버 사용시에 한글을 get방식이나 post방식으로 전달할 때 한글을 전달하면 깨질 수가 있다. 인터넷을 뒤져보면 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방식의 전달에서는 문제가 해결이 되지만 get방식일 떄에는 여전히 깨진다.
이럴 때는 톰캣이 설치된 디렉토리에서 conf 폴더를 찾아서 server.xml 파일을 열어서 수정한다.
변경전
|
변경후
|
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
|
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
|
위와 같이 URIEncoding 을 추가한다. 만일 이클립스에서 바로 돌리는 로컬 환경이라면 이클립스의 project explorer창에서 servers 를 찾아서 본인이 사용하는 톰캣 환경의 server.xml 파일을 찾아서 수정한다.
그리고 jsp파일 상단에도
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
... <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
이와 같이 인코딩 타입도 싹다 UTF-8 로 맞춘다. 물론 jsp파일을 저장할 때에도 utf-8로 저장해야만 한다. 이클립스에서 해당jsp파일을 선택 후 alt+enter 로 속성창을 열어서 utf-8로 저장이 잘 되었는지 확인하다. 아래처럼 속성창이 나올 것이다.