1、登錄成功的時傳一個session存放用戶物件
HttpSession session = requst.getSession();
session.setAttribute(Constant.USER_IN_SESSION, user);
2、判斷用戶的登錄狀態,獲取session,若session為空,則表示用戶沒有登錄過,攔截用戶跳轉到登錄界面,若為true,則表示用戶已經登錄,給用戶放行
public class UserInterceptor implements HandlerInterceptor {
@Override
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
// TODO Auto-generated method stub
}
@Override
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
throws Exception {
// TODO Auto-generated method stub
}
@Override
public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object arg2) throws Exception {
//獲取到session
Object object = req.getSession().getAttribute(Constant.USER_IN_SESSION);
if (object == null) {
resp.sendRedirect("/system/login");
return false;
} else {
return true;
}
}
}
3.配置攔截器
<mvc:interceptors>
<mvc:interceptor>
<!-- 攔截的路徑 /*只能攔截一層 /a /b -->
<mvc:mapping path="/system/**"/>
<!-- 不攔截的路徑 -->
<mvc:exclude-mapping path="/system/login"/>
<!-- 自己定義的攔截器位置 -->
<bean class="com.srd.cds.UserInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
uj5u.com熱心網友回復:
現在還有寫xml配置的spring專案嗎?不是都在用s(pring)b(oot)嗎轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/239230.html
標籤:Java EE
上一篇:Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
