当前位置: 首页 > news >正文

JavaWeb:SpringBootAOP切面实现统计方法耗时和源码解析

介绍

在这里插入图片描述

快速入门

在这里插入图片描述
在这里插入图片描述
1.导入依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId>
</dependency>
``	`
2.切面类```java
@Slf4j
@Aspect
@Component
public class RecordTimeApsect {/*** 统计耗时* @param joinPoint* @return* @throws Throwable*/@Around("execution(* com.itheima.service.impl.EmpServiceImpl.*(..))")public Object recordTime(ProceedingJoinPoint joinPoint) throws Throwable {// 1.获取当前时间long start = System.currentTimeMillis();// 2.执行目标方法Object result = joinPoint.proceed();// 3.得到运行时间long end = System.currentTimeMillis();log.info("运行时间:{}ms",(end-start));// 4.返回结果return result;}}

3.启动类EnableAspectJAutoProxy,加不加都行

核心概念

在这里插入图片描述

执行流程

在这里插入图片描述

通知类型

在这里插入图片描述
在这里插入图片描述

通知顺序(多个切面类)

在这里插入图片描述

切入点表达式-execution

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

切入点表达式-@annotation

在这里插入图片描述
在这里插入图片描述

连接点

在这里插入图片描述

相关文章:

  • Linux相关概念和易错知识点(41)(UDP、TCP报头结构)
  • uniapp中懒加载图片组件的封装与应用
  • 【前端设计模式讲解】工厂模式
  • Java高频面试之并发编程-20
  • Ethan的日记5/25
  • python打卡day36
  • 十二、【鸿蒙 NEXT】如何使用系统api实现视频压缩
  • uni-app学习笔记十一--vu3 watch和watchEffect侦听
  • Lua 脚本在 Redis 中的运用-23(Lua 脚本语法教程)
  • 考虑安全稳定约束的优化调度综述
  • 基于Python Anaconda环境,使用CNN-LSTM模型预测碳交易价格的完整技术方案
  • removeIf() 方法,结合 Lambda 表达式
  • Linux初始-历史(1)
  • Linux操作系统 使用信号量实现进程同步
  • OpenCV 第7课 图像处理之平滑(一)
  • 基于CEEMDAN-Transformer-BiLSTM的多特征风速气候预测的完整实现方案及PyTorch源码解析
  • Reactor模式详解:高并发场景下的事件驱动架构
  • 【redis】redis和hiredis的基本使用
  • 机器学习---各算法比较
  • 解决win10总是读硬盘
  • 网站开发第三方/国内好的seo
  • 电影网站app怎么做的/刷赞网站推广永久
  • 定制网站开发公司/河南郑州网站推广优化外包
  • 怎么把网站模板上传到自己的网站/创建网站的流程
  • 广州网站建设studstu/吴中seo页面优化推广
  • 响应式学校网站模板下载/国内重大新闻十条