티스토리 뷰
지난번 프로젝트에서는 .do를 사용하여 url을 만들었었다.
그래서 web.xml 에서도 인코딩 필터 url-pattern을 *.do 라고 줬었음.
(왜냐면 .do 로 줬을 때 servlet-mapping 에서의 url-pattern도 *.do 로 줬었기 때문, 하단 참고)
.do 방식때
<servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <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>*.do</url-pattern> </filter-mapping> |
근데 이번 프로젝트는 restful 하게 짜본다고 해서, url-pattern 을 그냥 / 로만 줬음. 당연히 인코딩 url-pattern도 동일하게 / 로만 줌
<servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <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> |
그랬더니 입력받은 값들이 ë¤ì´ì´í¸ ì´ë¹¼ê³ ë¬ë¼ì§ ë 이런식으로 외계어로 나옴...
그래서 properties 에서 모든 인코딩 방식을 UTF-8로 맞춰줬는데도 안됨 ㅠㅠ
문제는 저 인코딩 필터의 url-pattern에 있었음. 하단처럼 모든 url pattern에 인코딩 필터를 적용하지 않아서 그랬던 문제.. 그래서 모든 url pattern에 인코딩 필터를 적용하게끔 수정해주니 외계어가 정상적인 한글로 잘 나옴~!
<filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> |
'Web' 카테고리의 다른 글
json 형태의 [object Object] 출력하기 (3) | 2017.03.28 |
---|---|
페이스북 로그인 api 연동 시, email 불러오는 방법 (4) | 2017.03.24 |
프론트 - select box 직접입력란 생기게하기 (0) | 2017.02.21 |
jsp 파일 모듈화 (0) | 2017.02.09 |
jsp 파일들끼리 공통변수를 사용하고싶을 때 (0) | 2017.02.08 |