拦截器类配置只有登陆之后才能继续下一步操作不然,拦截之后返回登陆界面

package com.itlike.util;

import com.itlike.domain.User;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class Interceptor implements HandlerInterceptor {
    @Override
    //处理器方法执行之前调用
    //true代表放行,false不放行 就执行不了处理器方法
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("123");
        HttpSession session = request.getSession();
        User user = (User)session.getAttribute("user");
        if (user!=null){
            return true;
        }
        response.sendRedirect("/login");
        return false;
    }
    //当处理器方法执行之后会自动调用
    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println("1111");
    }
    //请求处理完成后会调用这个
    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        System.out.println("after");
    }
}

spring-mvc.xml 添加

<mvc:interceptors>
        <mvc:interceptor>
            <!--自定义拦截器-->
            <mvc:mapping path="/admin/**"/>
            <bean class="com.itlike.util.Interceptor"></bean>
        </mvc:interceptor>
    </mvc:interceptors>
Last modification:April 22, 2022
如果觉得我的文章对你有用,请随意赞赏