思路,先登錄後,將登錄信息存儲在session中,而後經過攔截器,對系統中的頁面和資源進行訪問攔截,同時對於登錄自己相關的頁面和資源不攔截。java
實現方法:web
/** * 登錄攔截器. * * @author leizhimin 2014/6/26 16:08 */ public class LoginInterceptor extends HandlerInterceptorAdapter { private static final String[] IGNORE_URI = {"/login.jsp", "/Login/","backui/","frontui/"}; @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { boolean flag = false; String url = request.getRequestURL().toString(); System.out.println(">>>: " + url); for (String s : IGNORE_URI) { if (url.contains(s)) { flag = true; break; } } if (!flag) { T_supplier_user user = LoginController.getLoginUser(request); if (user != null) flag = true; } return flag; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { super.postHandle(request, response, handler, modelAndView); } }
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <bean id="loginInterceptor" class="net.xiucheren.web.interceptor.LoginInterceptor"/> </mvc:interceptor> </mvc:interceptors>