一个很是简单的登陆权限拦截器java
问题一:登陆页面的提交请求确定是要过滤掉的,目前采用在xml里配置来过滤,可不能够配置不拦截某种请求。若是是按目前这种配置须要拦截请求,当请求太多的时候那就太麻烦了。浏览器
问题二:我简单地在拦截器里判断session是否有值,若是有表示登陆,若是没有则跳转登陆页面。按我下面的作法是不行的,有没有正确而有效的方法。session
问题三:若是你们可以给出在拦截器内跳转页面的方案,可个人login.jsp是放在WEB-INF下面的,经过ModelAndView跳转时,视图解析器会跳转到/WEB-INF/login.jsp下,那确定是找不到页面的。但若是我放到此文件夹下,那浏览器又不能访问login.jsp页面了。mvc
public class UserInterceptor implements HandlerInterceptor{
@Override
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object obj, Exception err)
throws Exception {
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response,
Object obj, ModelAndView mav) throws Exception {
response.sendRedirect("/login.jsp");
}
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
Object obj) throws Exception {
String str = (String) request.getSession().getAttribute("isLogin");
System.out.println("str=========>"+str);
if(str!=null){
return true;
}
return false;
}
}
app
jsp
ide
post
spa
code