AOP开发入门

hukss 4月前 ⋅ 70 阅读

date: 2023-01-05


AOP开发入门

  1. 在maven的pom.xml中导入坐标
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.10.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.9.4</version>
        </dependency>
    </dependencies>
  1. 定义接口和实现类
@Repository
public class BookDaoImpl  implements BookDao {

    @Override
    public void save() {
        System.out.println(System.currentTimeMillis());
        System.out.println("book dao save");
    }

    @Override
    public void update() {
        System.out.println("book dao update");

    }
}
  1. 定义通知类(通知类里面定义通知(要新增功能部分的一个方法)和切入点)
@Component
@Aspect
public class MyAdvice {
    // 定义切入点
    @Pointcut("execution(void com.hukss.dao.BookDao.update())")
    private void printTime(){}

    //定义通知
    @Before("printTime()")
    public void method() {
        System.out.println(System.currentTimeMillis());
    }

}
  1. 在spring配置类中使用注解@EnableAspectJAutoProxy
@EnableAspectJAutoProxy
public class SpringConfig {
}

全部评论: 0

    我有话说: