`
young-2017
  • 浏览: 9486 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

spring-boot使用Interceptor

阅读更多
1.继承HandlerInterceptorAdapter实现自定义的拦截器
2.重写preHandle方法 ,在请求发生前执行
3.重写postHandle方法,在请求完成之后执行
	public class MyMvcInterceptor extends HandlerInterceptorAdapter{

		@Override
		public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
			long startTime = System.currentTimeMillis();
			request.setAttribute("startTime",startTime);
			return true;
		}

		@Override
		public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
			long startTime = (long)request.getAttribute("startTime");
			long endTime = System.currentTimeMillis();
			System.out.println("本次请求时间为:"+(endTime - startTime) + " ms");
			super.postHandle(request, response, handler, modelAndView);
		}
	}



配置拦截器bean
重写addInterceptors方法,注册拦截器
	@SpringBootApplication
	@EnableAsync
	public class DemoApplication extends WebMvcConfigurerAdapter{
		@Bean
		public MyMvcInterceptor myMvcInterceptor(){
			return new MyMvcInterceptor();
		}

		@Override
		public void addInterceptors(InterceptorRegistry registry) {
			registry.addInterceptor(myMvcInterceptor());
		}

		public static void main(String[] args)
		{
			SpringApplication.run(DemoApplication.class, args);
		}
	}
  • 大小: 183.8 KB
分享到:
评论

相关推荐

    参照阿里druid整理druid-spring-boot-starter的demo

    这个"参照阿里druid个人整理druid-spring-boot-starter可运行demo"是基于Spring Boot 2.x版本的,包含了Druid的基本配置和使用。为了构建一个完整的Druid配置,你需要以下几个步骤: 1. **依赖添加**:在`pom.xml`...

    spring-boot-starter-mybatis-spring-boot-3.0.0.tar.gz

    - 解压:使用`tar -zxvf spring-boot-starter-mybatis-spring-boot-3.0.0.tar.gz`命令解压文件。 - 运行:根据项目结构,使用Java命令运行JAR包,例如`java -jar target/your-app.jar`。 5. **最佳实践**: - ...

    spring-boot 自定义xml配置web请求拦截器

    而拦截器(Interceptor)是Spring MVC提供的一种增强型功能,可以对请求和响应进行预处理和后处理,例如权限验证、日志记录等。 自定义XML配置通常会涉及到Spring的`<beans>`标签和`<bean>`标签,用于声明和实例化...

    grpc-jwt-spring-boot-starter:具有JWT授权的gRPC框架的Spring Boot Starter

    具有Spring Boot Starter-gRPC Java JWT 使用Auth模块扩展出色的。 使用类似于Spring Security模块中使用的简单注释的简单实现。 快速开始 (尝试示例项目:Kotlin中的。) 简单的开始仅由3个简单的步骤组成。 ...

    spring-boot-mybatis-mapper

    在本文中,我们将深入探讨如何将Spring Boot与MyBatis集成,并使用Mapper进行数据库操作,同时实现自动分页功能。Spring Boot以其简化配置和快速启动的特性,成为了现代Java开发中的首选框架。MyBatis则是一款优秀的...

    spring-boot.zip

    这个“spring-boot.zip”压缩包包含了一个使用Maven构建的Spring Boot工程模板,它整合了多种实用功能,如Swagger用于API文档,以及过滤器、拦截器、监听器和Servlet等核心组件。 1. Maven:Maven 是一个项目管理...

    spring-boot 集成 tk mybatis

    Spring Boot 是一个由 Pivotal 团队创建的 Java 框架,旨在简化 Spring 应用程序的初始搭建以及开发过程。它提供了一种“开箱即用”的体验,集成了大量的常用库,如数据访问、安全、WebSocket 等,让开发者能够快速...

    spring-boot添加 拦截器

    本篇文章将详细探讨如何在Spring Boot中添加和使用拦截器来实现登录拦截。 首先,我们需要了解Spring Boot中的拦截器是如何工作的。在Spring MVC框架中,拦截器是基于AOP(面向切面编程)的概念实现的。我们可以...

    pagehelper-spring-boot-master.zip

    PageHelper是Spring Boot项目中广泛使用的数据库分页插件,尤其在处理大数据量查询时,它的效率和便捷性得到了开发者们的认可。这个"pagehelper-spring-boot-master.zip"压缩包包含了一个完整的PageHelper分页插件与...

    详解在Spring-Boot中实现通用Auth认证的几种方式

    Interceptor 是 Spring Boot 中的一种拦截器机制,它可以在 Controller 方法被执行前拦截请求。我们可以使用 Interceptor 来实现通用 Auth 认证。 首先,我们需要定义一个拦截器类 `AppkeyInterceptor`,该类需要...

    spring-method-interceptor:Spring Handler Interceptor反思Web方法

    在Spring Boot 2.x中,我们不再直接通过XML配置注册拦截器,而是使用`WebMvcConfigurer`接口的`addInterceptors`方法。下面是一个简单的示例: ```java @Configuration public class WebConfig implements ...

    spring-security Jar包

    7. **与Spring Framework的深度集成**:Spring Security 能无缝地与Spring MVC、Spring Boot和其他Spring组件集成,简化了安全配置和开发流程。 8. **自定义扩展**:Spring Security 的设计是模块化的,允许开发者...

    kk-anti-reptile:kk-anti-reptile是凯京科技研发的,适用于基于spring-boot开发的分布式系统的反爬虫、防接口盗刷组件

    开源地址系统要求基于 spring-boot 开发(spring-boot1.x, spring-boot2.x 均可)需要使用 redis工作流程kk-anti-reptile 使用 对请求进行过滤,通过 spring-boot 的扩展点机制,实例化一个Spring HandlerInterceptor ...

    spring-web搭建项目

    虽然标题没有明确提到Spring Boot,但通常我们使用Spring Boot来简化Spring项目的搭建过程。在Spring Boot中,只需要添加`spring-boot-starter-web`依赖,它会自动包含`spring-web`和其他必要的Web组件: ```xml ...

    spring-web-5.2.4_spring-web_SSM框架_

    9. **Spring Boot集成**:虽然Spring Web本身不依赖于Spring Boot,但它们通常一起使用,Spring Boot简化了Spring Web的配置和启动过程。 在使用"spring-web-5.2.4"这个版本时,开发者可以获得官方稳定版本带来的...

    spring boot jwt Interceptor 例子

    spring boot jwt 和 interceptor的例子。 其中jwt的例子网上有很多,但是都是要数据库支持,这个只是用假数据模拟,不需要数据库支持。另外还有一个拦截器的简单例子。已经在sts 4 测试通过。

    spring-boot-mybatis-interceptor:mybatis自定义主键插件,通过该插件生成分布式唯一雪花ID作为数据库表的主键

    该插件项目可以直接运用于实际开发中,作为分布式数据库表主键ID使用。 一、项目概述 1、项目背景 在生成表主键ID时,我们可以考虑主键自增 或者 UUID,但它们都有很明显的缺点 主键自增:1、自增ID容易被爬虫遍历...

    SpringBoot与PageHelper的整合示例详解.docx

    <artifactId>pagehelper-spring-boot-starter <version>5.1.6 ``` - **配置PageHelper**:在application.properties或application.yml中配置PageHelper的相关参数,如数据库类型、合理化等: ```properties ...

    spring-code-based

    4. 结合 Spring Boot 进行快速开发,简化配置过程。 5. 利用 RestTemplate 或 WebClient 实现微服务间的通信。 总结,Spring MVC 是一个强大且灵活的 Web 开发框架,通过深入了解其源码和工作原理,开发者可以更好...

    spring-framework-4.0.0.RELEASE-xrl.zip

    6. **拦截器(Interceptor)**:Spring MVC的拦截器允许开发者在请求处理前后进行预处理和后处理,实现如权限验证、日志记录等功能。 7. **RESTful支持**:Spring MVC支持构建RESTful风格的Web服务,方便与其他系统...

Global site tag (gtag.js) - Google Analytics