web.xml 한글 변환 관련 Encoding 설정 방법
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package kr.co.ithrd.common;
import java.io.*;
import javax.servlet.*;
public class CharacterEncodingFilter implements Filter {
FilterConfig fc;
public void init(FilterConfig fc){
this.fc = fc;
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException{
try {
request.setCharacterEncoding(fc.getInitParameter("characterEncoding"));
} catch (UnsupportedEncodingException uee) {
uee.printStackTrace();
}
chain.doFilter(request, response);
}
public void destroy(){}
}
위의 소스는 필터 기능을 통해, 넘어온 캐릭터셋으로 변경하는 로직입니다.
web.xml 안에
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>kr.co.ithrd.common.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>characterEncoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
이 구문을 선언해주시면됩니다.
간단하게 소스를 설명하자면, filter 이름이 CharacterEncodingFilter로 mapping 시키고 url-pattenr 이 * 인 파일은 (즉, 전부) 해당 Filter 를 타도록 하는 방법입니다.
java 파일 디컴파일 하면, 해당 클래스는 결국 Filter 를 implements 받습니다.