Spring Boot实现拦截器

2022-07-08 14:49:14

首先自定义拦截器,代码如下

package com.example.learn.filter;import com.example.learn.pojo.User;import org.springframework.lang.Nullable;import org.springframework.stereotype.Component;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/**
 * @author : wangbo
 * @version : 1.0
 * @date :Create in 2021/5/15
 * @description :
 */@ComponentpublicclassSessionInterceptorimplementsHandlerInterceptor{@OverridepublicbooleanpreHandle(HttpServletRequest request, HttpServletResponse response, Object handler)throws Exception{
        User user=(User)request.getSession().getAttribute("user");if(user!= null){returntrue;}returnfalse;}@OverridepublicvoidpostHandle(HttpServletRequest request, HttpServletResponse response, Object handler,@Nullable ModelAndView modelAndView)throws Exception{}@OverridepublicvoidafterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,@Nullable Exception ex)throws Exception{}}

然后编写拦截器配置类

package com.example.learn.config;import com.example.learn.filter.SessionInterceptor;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;/**
 * @author : wangbo
 * @version : 1.0
 * @date :Create in 2021/5/15
 * @description :
 */@ConfigurationpublicclassInterceptorConfigextendsWebMvcConfigurerAdapter{@OverridepublicvoidaddInterceptors(InterceptorRegistry registry){
        registry.addInterceptor(newSessionInterceptor()).addPathPatterns("/**").excludePathPatterns("/user/login","/user/register");super.addInterceptors(registry);}}
  • 作者:东风吹雨
  • 原文链接:https://blog.csdn.net/qq_42331202/article/details/116864006
    更新时间:2022-07-08 14:49:14