做个笔记,以防忘记
1.加头(不知道叫什么)
xmlns:mvc="http://www.springframework.org/schema/mvc"
2.加配置
<mvc:interceptors>
<mvc:interceptor>
<!--要拦截的路径-->
<mvc:mapping path="/admin/*"/>
<!--不拦截的路径-->
<mvc:exclude-mapping path="/user/bootstrap/*"/>
<!--拦截器的类路径-->
<bean class="com.sinosoft.intercepor.CheckLoginIntercepor"/>
</mvc:interceptor>
</mvc:interceptors>
3.实现拦截器的类
package com.sinosoft.intercepor;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import com.sinosoft.util.CookieUtil;
public class CheckLoginIntercepor implements HandlerInterceptor {
//视图渲染完执行染完执行
@Override
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
// TODO Auto-generated method stub
System.out.println("视图渲染完执行染完执行");
}
//请求达到controller,处理结束,视图没有渲染
@Override
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
throws Exception {
// TODO Auto-generated method stub
System.out.println("请求达到controller,处理结束,视图没有渲染");
}
//请求派发controller前执行
@Override
public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception {
// TODO Auto-generated method stub
System.out.println("拦截器");
Cookie cookie = CookieUtil.getCookieByName(arg0, "adminName");
if (null == cookie) {
arg1.sendRedirect("/login-web/user/admin_login.html");
return false;
}
else {
String adminName = cookie.getValue();
if (adminName.equals("admin")) {
return true;
}
else {
arg1.sendRedirect("/login-web/user/admin_login.html");
return false;
}
}
}
}
完结散花