AOP入门程序

AOP是一种编程思想,而spring框架对这种思想进行实现,那我们学习的就是SpringAOP.

AOP是面向切面编程

AOP快速入门:

1.引入AOP依赖

入门程序:

java 复制代码
package com.itheima.aop;

import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.stereotype.Component;
@Aspect //表示当前为AOP类
@Component
@Slf4j
public class RecordTimeAspect {

    @Around("execution(* com.itheima.service.impl.*.*(..))")
    public Object recordTime(ProceedingJoinPoint pjp) throws Throwable {
        //1.记录方法运行时间
        long begin = System.currentTimeMillis();

        //2.执行原始的方法
        Object result = pjp.proceed();


        //3.记录方法的结束时间,记录耗时
        long end = System.currentTimeMillis();
        log.info("方法{}执行耗时:{}ms",pjp.getSignature(),end-begin);

        return result;
    }
}
相关推荐
少控科技10 分钟前
QT高阶日记01
开发语言·qt
CC.GG15 分钟前
【Linux】进程概念(五)(虚拟地址空间----建立宏观认知)
java·linux·运维
无限进步_20 分钟前
【C++】大数相加算法详解:从字符串加法到内存布局的思考
开发语言·c++·windows·git·算法·github·visual studio
“抚琴”的人22 分钟前
C#上位机工厂模式
开发语言·c#
巨大八爪鱼31 分钟前
C语言纯软件计算任意多项式CRC7、CRC8、CRC16和CRC32的代码
c语言·开发语言·stm32·crc
C+-C资深大佬37 分钟前
C++ 数据类型转换是如何实现的?
开发语言·c++·算法
木千1 小时前
Qt全屏显示时自定义任务栏
开发语言·qt
以太浮标1 小时前
华为eNSP模拟器综合实验之- AC+AP无线网络调优与高密场景
java·服务器·华为
Mr__Miss1 小时前
JAVA面试-框架篇
java·spring·面试
小马爱打代码1 小时前
SpringBoot:封装 starter
java·spring boot·后端