public class SessionAliveCheckFilter extends AbstractHttpFilter
사용자의 Session이 살아있는지를 체크해서, 살아있지 않으면 정해진 페이지로 되돌리는 Filter
단, 요청 URI(HttpServletRequest의 getRequestURI()를 호출한 결과) 값이 "/"인 것은 무조건 예외다.
이 Filter에서 사용하는 파라미터는 다음과 같다.
| Modifier and Type | Class and Description |
|---|---|
static class |
SessionAliveCheckFilter.Redirector
점검을 통과하지 못 했을 때 Redirect 시키는 클래스.
|
| Constructor and Description |
|---|
SessionAliveCheckFilter() |
| Modifier and Type | Method and Description |
|---|---|
void |
doFilter(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
javax.servlet.FilterChain chain)
HTTP 요청을 처리한다.
|
static SessionAliveCheckFilter.Redirector |
getRedirector(java.lang.String filterName)
주어진 필터명으로 등록된 SessionAliveCheckFilter에서 사용하는
Redirector 객체를 얻는다.
|
void |
init(javax.servlet.FilterConfig filterConfig) |
doFilterdestroypublic void init(javax.servlet.FilterConfig filterConfig)
throws javax.servlet.ServletException
init in interface javax.servlet.Filterinit in class AbstractFilterjavax.servlet.ServletExceptionFilter.init(javax.servlet.FilterConfig)public static SessionAliveCheckFilter.Redirector getRedirector(java.lang.String filterName)
주어진 필터명으로 등록된 SessionAliveCheckFilter에서 사용하는 Redirector 객체를 얻는다.
업무 로직에 의해 Redirect를 판단해서 처리해야 할 경우 동일 로직을 거쳐 처리되도록 하기 위해 SesseionAliveCheckFilter의 Redirector 객체를 얻기 하였다.
filterName - Redirector를 가지고 있는 SessionAliveCheckFilter 객체명.public void doFilter(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
javax.servlet.FilterChain chain)
throws java.io.IOException,
javax.servlet.ServletException
AbstractHttpFilterdoFilter in class AbstractHttpFilterrequest - HttpServletRequest 구현 클래스의 객체.response - HttpServletResponse 구현 클래스의 객체.java.io.IOExceptionjavax.servlet.ServletException