spring自定義攔截器實現用戶登入權限檢查

1.自定義攔截器web

import org.springframework.web.servlet.HandlerInterceptor;spring

public class LoginInterceptor implements HandlerInterceptor {mvc

    public void afterCompletion(HttpServletRequest arg0,
            HttpServletResponse arg1, Object arg2, Exception arg3)
            throws Exception {
    }app

    public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
            Object arg2, ModelAndView arg3) throws Exception {
    }webapp

    public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
            Object arg2) throws Exception {
        
        String uri=request.getRequestURI();
        uri = uri.toLowerCase();
        if(uri.indexOf("login")>=0||uri.indexOf("logout")>=0){
            return true;
        }else{
            if(request.getSession()==null){
                return false;
            }
            String userId=(String)request.getSession().getAttribute("USERID");
            if(userId==null||userId.isEmpty()){
                return false;
            }
            return true;
        }
    }
}post

2.在spring配置文件中進行配置(對/webapp/路徑下的全部請求進行攔截處理)get

<mvc:interceptors>
         <mvc:interceptor>
             <mvc:mapping path="/webapp/*"/>
             <bean class="com.lantaiyuan.ebus.custom.interceptors.LoginInterceptor"/>
         </mvc:interceptor>
     </mvc:interceptors>servlet

相關文章
相關標籤/搜索