使用SpringMVC 想自定义一个拦截器,对权限进行管理,只有登录时才能访问,没有登录时访问,跳转到登录界面。
定义拦截器的部分代码
public class CommonInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object obj) throws Exception {
System.out.println("执行 自定义拦截器");
String Employee_num = (String) request.getSession().getAttribute("employee_num");
if(Employee_num == null){
System.out.println("用户为空-----------------");
request.getRequestDispatcher("/WEB-INF/jsp/login.jsp").forward(request, response);
return false;
}else{
return true;
}
}
注册拦截器代码
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/" />
<bean class="com.staffos.interceptor.CommonInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
但访问请求是都没有输出preHandle()方法的“执行自定义拦截器”。
写成 <mvc:mapping path="/**" /> 试试呢