目录
一、实现思路
在 SpringMVC 或者 SSM 环境的项目下,新建一个拦截类,继承 HandlerInterceptor 接口,然后实现接口里面的三个方法,接着在 preHandle 方法里面编写拦截后的相关处理,然后在 springmvc 的配置中,将所有访问 controller 的链接给全都拦截下来就行。
注意:springmvc 配置拦截后,可能会把静态资源给拦截掉,这时候只需要把静态资源设置为不拦截就行,具体实现看下面。
二、具体实现
public class LoginInterceptor implements HandlerInterceptor{
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//获取请求的URL
String url = request.getRequestURI();
//URL:除了登录请求外,其他的URL都进行拦截控制
if( url.indexOf("/login") >= 0 ){
return true;
}
//获取 Session
HttpSession session =request.getSession();
TAdmin tadmin = (TAdmin)session.getAttribute("user");