728x90
반응형
public class BoardInterceptor extends HandlerInterceptorAdapter{
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
System.out.println("게시판 인터셉터 발동!");
//BoardController쪽으로 들어갈 요청이 회원인지 아닌지 먼저 확인
HttpSession session = request.getSession();
if(session.getAttribute("login") == null) {
System.out.println("회원 인증 실패!");
// response.sendRedirect("/error.jsp");
response.setContentType("text/html; charset=utf-8");
PrintWriter out = response.getWriter();
String element =
"<script> alert('로그인을 해야합니다!'); location.href='/돌아갈매핑주소'; </script>";
out.println(element);
out.flush();//브라우저 출력 비우기
out.close();//아웃객체 닫기
return false;//null이기때문에 로그인이 안되있으므로 꺼지라 한다.
}
return true;
}
}
servlet-config.xml에서 인터셉터 클래스 빈등록과 인터셉터 사용 환경 설정 진행.
<beans:bean id="boardInterceptor" class="com.spring.mvc.board.commons.interceptor.BoardInterceptor" />
<interceptors>
<interceptor>
<mapping path="/board/write"/>
<mapping path="/board/modify"/>
<beans:ref bean="boardInterceptor"/>
</interceptor>
</interceptors>
자세한 동작과정 ↓
728x90
반응형
'SpringFramework > BASIC' 카테고리의 다른 글
[자동로그인]session&cookie 활용 자동로그인 구현 예제 로직 및 과정 vol.1 (1) | 2020.09.10 |
---|---|
쿠키와세션,인터셉터를 활용한 자동로그인 개념 설명 (0) | 2020.09.10 |
[Interceptor] 세션검증 공통코드 처리 정리 및 예시 (0) | 2020.09.10 |
[Filter, Interceptor, AOP] 공통코드 처리 (0) | 2020.09.10 |
[session] 로그인,비로그인,회원,비회원 에 따른 UI 차이 (0) | 2020.09.09 |