欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

AOP完全注解开发

程序员文章站 2022-07-12 23:08:28
...

基于完全注解开发
1.使用注解@component创建方法对象和增强类对象

@Component
public class Book {
    public void add(){
        System.out.println("add...");
    }
    public void delete(){
        System.out.println("delete...");
    }
}

2.导入aop相应jar包
AOP完全注解开发

3.设置注解类,代替注解文件,实现三个注解

@Configuration
@ComponentScan(basePackages = {"Package4AOP"})
@EnableAspectJAutoProxy(proxyTargetClass = true)
public class AOPConfig {
}

4.在增强类中使用不同的注解,创建不同生命周期的增强方法,可以使用共切点

@Component
@Aspect
public class BookProxy {
    @Before("Package4AOPSlef.BookProxy.pointCut()")
    public void add(){
        System.out.println("proxy add");
    }
    //设置共切点
    @Pointcut(value = "execution(* Package4AOPSlef.Book.add())")
    public void pointCut(){
    }
}

5.在测试类中执行方法使用annotationConfigApplicationContext容器获取对象,调用方法即可实现增强

public class AOPTest {
    public static void main(String[] args) {
        AnnotationConfigApplicationContext context=new AnnotationConfigApplicationContext(AOPConfig.class);
        Book book = context.getBean(Book.class);
        book.add();
    }
}
相关标签: 笔记