- 필터(Filter)
- HTTP Request/HTTP Response 와 관련하여 여러 작업을 서블릿에 전달하기 전/후로 처리하기 위해 사용하는 기능
- 사용자 인증 및 로그 기록에 활용 가능
- Filter 인터페이스를 implements 하여 사용하며 @WebFilter 어노테이션 또는 web.xml 의 <filter>, <filter-mapping>
태그를 사용하여 등록한다 (서블릿 등록 방식과 동일)
<filter>
<filter-name>loggingFilter</filter-name>
<filter-class>filter.LoggingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loggingFilter</filter-name>
<url-pattern>/*<url-pattern>
</filter-mapping>
- 필터는 다수의 URL 패턴에 일치하여 동작시킬 수 있다.
- 여러개의 필터를 생성하여 순차적으로 필터를 거쳐서 서블릿에 전달되도록 할 수 있는데, 이 경우에는 web.xml에
필터를 등록하여 먼저 등록한 순서대로 동작하는 방식으로 제어한다.
- 필터에서는 chain.doFilter() 메서드를 통해 다음의 필터로의 연계를 수행한다.
- 필터에는 init(), doFilter(), destroy() 메서드의 구현이 필요하며, init(), destroy() 메서드는 생략 가능하다.
- init() : 필터가 생성될 때 초기화 작업을 위한 메서드
- destroy() : 필터가 소멸될 때 사용 자원을 반납하기 위한 용도의 메서드
- doFilter() : HTTP 요청과 응답에 호출되어 사용되는 메서드로 반드시 필요하다.
▷ Logging 필터 생성 (로그 기록 출력)
@WebFilter 어노테이션 방식으로 url 패턴을 지정하는 방법┐
- 페이징
: 사용자가 요청한 데이터를 제공할 때 너무 많은 양의 데이터 목록을 제공해야 하는 경우, 이를 페이지로 나누어서
제공할 수 있도록 만드는 기능 (게시판 목록)
((코드 진행 거꾸로 기록))
++ 페이지에 보여질 목록 수 선택 옵션
cookie | X | O | O | X |
parameter | X | X | O | O |
목록수 | 10 (기본설정) | 쿠키값 | parameter값, 쿠키재설정 | parameter값, 쿠키재설정 |
'국비' 카테고리의 다른 글
01.26 국비학원 79일차 (게시글-목록페이지) (0) | 2023.01.27 |
---|---|
01.25 국비학원 78일차 (페이징 클래스 생성 후 적용) (0) | 2023.01.26 |
01.19 국비학원 76일차 (리스너) (0) | 2023.01.21 |
01.18 국비학원 75일차 (쿠키(Cookie), 세션(Session)) (0) | 2023.01.20 |
01.17 국비학원 74일차 (EL/JSTL, 회원가입 페이지) (0) | 2023.01.18 |