티스토리 뷰


지난번 프로젝트에서는 .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>




댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함