开发者社区> 问答> 正文

Spring AOP切面间的执行顺序是什么?

已解决

Spring AOP切面间的执行顺序是什么?

展开
收起
去校区学技术 2022-04-01 07:55:03 863 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    切面之间使用older注解,区分调用顺序,Order值越小,那么切面越先执行(越后结束).

    不指定Order,那么Order是默认值->Integer.MAX_VALUE. 如果Order相同,则是按照切面字母的顺序来执行切面.比如@Transactional和@Cacheable->对应的切面是TransactionInterceptor和CacheInterceptor,则先执行@Cacheable的切面

    @Transactional也是通过切面实现,Order值是Integer.MAX_VALUE。(如果在service方法上同时添加带older的日志注解,在日志切面after里面报错,不会回滚事务)

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

相关电子书

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

相关实验场景

更多