본문 바로가기
스프링

인터셉터 이용하기

by 그리득 2023. 12. 11.
728x90
HandlerInterceptor를 구현한 클래스 생성하기

 

로그인하지 않고 접속하면 alert 기능

public class LoginCheckInterceptor implements HandlerInterceptor{
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
			throws Exception {
		//로그인 정보 확인
		HttpSession session=request.getSession();
		Member loginMember=(Member)session.getAttribute("loginMember");
		
		if(loginMember==null) {
			//로그인안하고 접근함!
			request.setAttribute("msg", "로그인 후 이용할 수 있는 서비스입니다.");
			request.setAttribute("loc", "/");
			request.getRequestDispatcher("/WEB-INF/views/common/msg.jsp").forward(request, response);
			return false;
		}
		
		return true;
	}
}

 

 

 

 

 

<interceptors>
	<interceptor>
		<mapping path="/member/*"/>
		<beans:bean class="com.bs.spring.common.interceptor.LoggerIntercepter"/>
	</interceptor>
</interceptors>

 

 

 

자주 쓰는 인터셉터 class는 bean으로 설정해서 사용

<!-- 인터셉터 적용설정하기 -->
	<beans:bean id="loginCheckInterceptor" class="com.bs.spring.common.interceptor.LoginCheckInterceptor"/>
<interceptors>
	<interceptor>
		<mapping path="/demo/*"/>
		<exclude-mapping path="/demo/demoList.do"/>
		<beans:ref bean="loginCheckInterceptor"/>
	</interceptor>
</interceptors>

 

exclude-mapping : 특정 url주소 제외 가능

'스프링' 카테고리의 다른 글

WebSocket 채팅 구현  (0) 2023.12.18
ajax 응답/처리  (0) 2023.12.14
스프링 MyBatis 구현하기  (0) 2023.12.11
Hibernate-validator 구현  (0) 2023.12.11
스프링 단방향 암호화 처리  (1) 2023.12.08