Filter 를 통해 할수 있는 일은..
 - 사용자 session check
 - 방문 history
 - 데이터 암호화, 캐싱등


web.xml
...... 중략 ....
    <filter>
        <filter-name>testFilter</filter-name>
        <filter-class>TestFilter</filter-class>
        <init-param>
            <param-name>t1</param-name>
            <param-value>test1</param-value>
        </init-param>
        <init-param>
            <param-name>t2</param-name>
            <param-value>test2</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>testFilter</filter-name>
        <url-pattern>/test/*</url-pattern>
    </filter-mapping>

    <filter-mapping>
        <filter-name>testFilter</filter-name>
        <url-pattern>*.test</url-pattern>
    </filter-mapping>
... 중략 ...

public class TestFilter implements Filter {
    public void init(FilterConfig filterConfig) throws ServletException {
        // Filter Instance가 활성화 될때 실행되는 Method
        // FilterConfig Object
        //  getFilterName()          - "testFilter" 반환
        //  getServletContext()      - servletContext 반환
        //  getInitParameter("t1")   - "test1" 반환
        //  getInitParameterNames()  - Enumeration 타입으로 반환
    }
   
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain fc) throws IOException, ServletException {
        // 실제 동작 Method
        // chain으로 다음 filter를 실행하게 한다.
        fc.doFilter(req, res);
    }
   
    public void destroy() {
        // Filter Instance가 종료될때 실행되는 Method
    }
}

 

'Jsp-Servlet > Etc' 카테고리의 다른 글

eclipse 로딩 이미지 변경 (splash)  (2) 2011.09.14
dwr sample  (4) 2010.04.07