开发者社区> 问答> 正文

Spring AOP中切点定义实例有什么?

已解决

Spring AOP中切点定义实例有什么?

展开
收起
去校区学技术 2022-04-01 07:08:03 473 0
1 条回答
写回答
取消 提交回答
  • 推荐回答
    @Pointcut("execution(public * *(..))") // 1
    private void anyPublicOperation() {}
    
    @Pointcut("within(com.xyz.someapp.web..*))") // 2
    private void inTrading() {}
    
    @Pointcut("anyPublicOperation() && inTrading()") // 3
    private void tradingOperation() {}
    
    @within(org.springframework.transaction.annotation.Transactional) // 4
    private void transactionalClass() {}
    
    @annotation(org.springframework.transaction.annotation.Transactional) //5
    private void transactionalMethod() {}
    

    上面的代码定义了三个切点:

    1.任意公共方法(实际应用中一般不会定义这样的切点)

    2.在within(com.xyz.someapp.web包或者其子包下任意类的方法

    3.同时满足切点1和切点2条件的切点,这里使用了&&符号

    4.标注了Transactional的类的方法

    5.标注了Transactional的方法

    2022-04-01 07:09:15
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多