您现在的位置是:首页 > 编程 > 

【Spring Boot】029

2025-07-23 20:40:19
【Spring Boot】029 【Spring Boot】029-一、概述本质上是面向切面编程(AOP),符合横切关注点的功能都可以放在中来实现,主要的应用场景包括:登录验证,判断用户是否登录。权限验证,判断用户是否有权限访问资源,如校验token日志记录,记录请求操作日志(用户ip,访问时间等),以便统计请求访问量。处理cookie、本地化、国际化、主题等。性能监控,监控请求

【Spring Boot】029

【Spring Boot】029-一、概述

本质上是面向切面编程(AOP),符合横切关注点的功能都可以放在中来实现,主要的应用场景包括:

  • 登录验证,判断用户是否登录。
  • 权限验证,判断用户是否有权限访问资源,如校验token
  • 日志记录,记录请求操作日志(用户ip,访问时间等),以便统计请求访问量。
  • 处理cookie、本地化、国际化、主题等。
  • 性能监控,监控请求处理时长等。
  • 通用行为:读取cookie得到用户信息并将用户对象放入请求,从而方便后续流程使用,还有如提取Locale、Theme信息等,只要是多个处理器都需要的即可使用实现)
二、代码实现代码语言:javascript代码运行次数:0运行复制
package com.zibo.api.interceptor;

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.HttpServletRespe;
import java.io.IOException;

// 实现
@Component
public class MyInterceptor implements HandlerInterceptor {

    // 处理请求之前执行
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletRespe respe, Object handler) throws Exception {
        println("=====:处理请求之前执行=====");
        return true; // true 表示放行
    }

    // 处理请求之后执行
    @Override
    public void postHandle(HttpServletRequest request, HttpServletRespe respe, Object handler, ModelAndView modelAndView) throws IOException {
		println("=====:处理请求之后执行=====");
    }

    // 响应后执行
    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletRespe respe, Object handler, Exception ex) {
        println("=====:响应后执行=====");
    }

}
三、拦截目标配置代码语言:javascript代码运行次数:0运行复制
package com.zibo.;

import com.zibo.api.interceptor.MyInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.annotation.Configuration;
import org.springframework.web.annotation.InterceptorRegistry;
import org.springframework.web.annotation.WebMvcConfigurationSupport;

@Configuration
public class WebAuthConfig extends WebMvcConfigurationSupport {
    @Autowired
    private MyInterceptor myInterceptor;
 
    @Override
    protected void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(myInterceptor)
                .addPathPatterns("/user/**") // 拦截的接口:全部拦截!
                .excludePathPatterns("/user/login","/user/register", "/favicon.ico"); // 放行的接口:登录、注册等
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent 删除权限springboot登录接口

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1198686.html

相关标签:无
上传时间: 2025-07-23 12:30:17

上一篇:【Spring Boot】030

下一篇:【Spring Boot】028

留言与评论(共有 9 条评论)
本站网友 88注
20分钟前 发表
国际化
本站网友 保利未来城市
9分钟前 发表
记录请求操作日志(用户ip
本站网友 支持手写的平板
4分钟前 发表
拦截目标配置代码语言:javascript代码运行次数:0运行复制package com.zibo.; import com.zibo.api.interceptor.MyInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.annotation.Configuration; import org.springframework.web.annotation.InterceptorRegistry; import org.springframework.web.annotation.WebMvcConfigurationSupport; @Configuration public class WebAuthConfig extends WebMvcConfigurationSupport { @Autowired private MyInterceptor myInterceptor; @Override protected void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(myInterceptor) .addPathPatterns("/user/**") // 拦截的接口:全部拦截! .excludePathPatterns("/user/login"
本站网友 水晶之恋婚纱摄影
18分钟前 发表
拦截目标配置代码语言:javascript代码运行次数:0运行复制package com.zibo.; import com.zibo.api.interceptor.MyInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.annotation.Configuration; import org.springframework.web.annotation.InterceptorRegistry; import org.springframework.web.annotation.WebMvcConfigurationSupport; @Configuration public class WebAuthConfig extends WebMvcConfigurationSupport { @Autowired private MyInterceptor myInterceptor; @Override protected void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(myInterceptor) .addPathPatterns("/user/**") // 拦截的接口:全部拦截! .excludePathPatterns("/user/login"
本站网友 家庭自制泡菜的做法
29分钟前 发表
如有侵权请联系 cloudcommunity@tencent 删除前往查看权限springboot登录接口
本站网友 全球企业500强
28分钟前 发表
判断用户是否有权限访问资源
本站网友 节约用水的故事
24分钟前 发表
访问时间等)
本站网友 自来水
1分钟前 发表
分享自作者个人站点/博客