自定义切面

q1:@Aspect注解 不提示导入?

mvn依赖作用域修改 删掉

这是我最快一次完成Aop切面日志记录

记录下流程:

1.导入必须依赖:

<!--这个依赖是 AspectJ 的编织器(weaver),它是一个面向切面编程(AOP)的工具,
		用于在运行时对 Java 代码进行横切(cross-cutting)操作和增强。		-->
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjweaver</artifactId>
			<version>1.9.20.1</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjrt -->
		<!--AspectJ 运行时是一个小型库,用于在先前的编译时或编译后(二进制编织)构建步骤中运行由
		AspectJ 方面增强的 Java 程序。-->
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjrt</artifactId>
			<version>1.9.20.1</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
		<!--		Spring Context 提供对注册表(上下文)等已配置对象的访问。它继承了 Spring Beans 的功能,
		并添加了对国际化、事件传播、资源加载和上下文的透明创建的支持。-->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>6.0.11</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-aop -->
		<!--Spring AOP 提供了符合联盟标准的面向方面的编程实现,允许您定义方法拦截器和切入点,以干净地解耦实现应分离的功能的代码。-->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<version>6.0.12</version>
		</dependency>

2.定义注解:

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface BaseLog {
}

3.注解实现:

@Slf4j
@Aspect
@Order(0)
@Component
public class BaseLogAop {
    @Pointcut("@annotation(com.xbh.stu.annotation.BaseLog)")
    public void annotationMethod() {

    }

    @Around("annotationMethod()")
    public Object getBaseLog(ProceedingJoinPoint joinPoint) throws Throwable {
        String className = joinPoint.getTarget().getClass().getSimpleName();
        String methodName = joinPoint.getSignature().getName();
        log.info(className+"."+methodName);
        return joinPoint.proceed();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值