拦截器类:
public class LoginInterceptor implements HandlerInterceptor {
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
User user = (User) request.getSession().getAttribute("user");
if (user == null) {
String path = request.getContextPath();
response.sendRedirect(path+"/user/toLogin.do");
return false;
}
return true;
}
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
}
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
}
public class LoginInterceptor implements HandlerInterceptor {
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
User user = (User) request.getSession().getAttribute("user");
if (user == null) {
String path = request.getContextPath();
response.sendRedirect(path+"/user/toLogin.do");
return false;
}
return true;
}
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
}
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
}
}
springmvc.xml拦截器配置
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/user/login/**"/> <!--拦截user/login/请求-,controller的requestmapping为/user->
<bean class="com.xulifei.ecps.interceptor.LoginInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
controller约定
@RequestMapping("/login/listAddress.do") //在要拦截的方法上都加一个/login/,那么就成了登录拦截器了
public String listAddress(){
return "person/Address";
}