zoukankan      html  css  js  c++  java
  • springboot AOP配置

    在Springboot中添加AOP配置分两步:

    最近学习AOP ,记录一下,虽然很多名字不太清楚,但是问题不大

    1:在pom.xml中添加AOP依赖

    2:建一个AOP配置类

     下面来看下代码是怎么实现的:

    1:在pom.xml中添加AOP依赖

    <!--引入AOP依赖-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-aop</artifactId>
            </dependency>

    2:建一个AOP配置类,我的类名是 MyAspect

    package com.yyy.config;
    
    import org.aspectj.lang.annotation.*;
    import org.springframework.stereotype.Component;
    
    /**
     * @auther YueYangyang
     * @date 2020/7/4 15:41
     */
    @Aspect
    @Component
    public class MyAspect {
    
        @Pointcut("execution(* com.yyy.service.*.*(..))")
        public void Aspect(){
            System.out.println("这是切面aop");
        }
    
        @Before("Aspect()")
        public void beforeAspect(){
            System.out.println("这是切面aop  前置方法");
        }
    
        @After("Aspect()")
        public void afterAspect(){
            System.out.println("这是切面aop  后置方法");
        }
    
        @AfterReturning("Aspect()")
        public void afterReturningAspect(){
            System.out.println("这是切面aop  后置方法 回调方法");
        }
    
        @AfterThrowing("Aspect()")
        public void afterThrowingAspect(){
            System.out.println("这是切面aop  异常处理方法");
        }
    }

    其中  @Pointcut("execution(* com.yyy.service.*.*(..))") 是什么意思呢?它表示调用 com.yyy.service 路径下的所有方法 都会执行下 Aspect 方法,

    @Before("Aspect()")   Before注解的意思是在 Aspect() 方法执行前执行

    @After("Aspect()")   Before注解的意思是在 Aspect() 方法执行后执行等等。记提看代码上面 有写

    为了方便理解 ,我把com.yyy.service 下面的代码贴出来

    package com.yyy.service;
    
    import com.yyy.pojo.User;
    import org.springframework.stereotype.Service;
    
    @Service
    public interface UserService {
        User queryById(User user);
    }
  • 相关阅读:
    Qt on Android:将Qt调试信息输出到logcat中
    cheap louis vuitton outlet
    mysql经常使用查询:group by,左连接,子查询,having where
    SQLSERVER 2008 链接 到 ORACLE 11
    uva 11885
    Comet入门及最简单的Java Demo
    什么是BGP线路?什么是BGP机房?
    (LeetCode)旋转数组
    ios app 实现热更新(无需发新版本号实现app加入新功能)
    hdu 4961 Boring Sum(高效)
  • 原文地址:https://www.cnblogs.com/yyy116008/p/13308137.html
Copyright © 2011-2022 走看看