java拦截器handler_java自定义拦截器 HandlerInterceptorAdapter或HandlerInterceptor的使用

Spring MVC 拦截器详解
本文详细介绍了Spring MVC中的拦截器HandlerInterceptorAdapter及其实现方式,包括三种主要的方法:preHandle、postHandle和afterCompletion。同时展示了如何在Spring Boot中配置拦截器,以及如何排除特定路径。

Spring拦截器

HandlerInterceptorAdapter需要继承,

HandlerInterceptor需要实现

可以作为日志记录和登录校验来使用

建议使用HandlerInterceptorAdapter,因为可以按需进行方法的覆盖。

主要为3种方法:

preHandle:拦截于请求刚进入时,进行判断,需要boolean返回值,如果返回true将继续执行,如果返回false,将不进行执行。一般用于登录校验。

postHandle:拦截于方法成功返回后,视图渲染前,可以对modelAndView进行操作。

afterCompletion:拦截于方法成功返回后,视图渲染前,可以进行成功返回的日志记录。

springmvc的配置xml

springboot的注解配置

@Configurationpublic class InterceptorConfig implementsWebMvcConfigurer {private static final Logger logger = LoggerFactory.getLogger(InterceptorConfig.class);

@Overridepublic voidaddInterceptors(InterceptorRegistry registry) {

registry.addInterceptor(authenticationInterceptor())

.addPathPatterns("/**");

registry.addInterceptor(loginInterceptor())

.addPathPatterns("/**")

.excludePathPatterns("/css/**","/images/**","/js/**","/login.html");//拦截所有请求,通过判断是否有 @LoginRequired 注解 决定是否需要登录或者通过excludePathPatterns配置不需要拦截的路径//多拦截器配置

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值