springboot2.x和springboot1.x的aop顺序是怎样的

发布时间:2021-09-27 10:01:24 作者:柒染
来源:亿速云 阅读:108
# SpringBoot 2.x和SpringBoot 1.x的AOP顺序是怎样的

在SpringBoot中,AOP(面向切面编程)的执行顺序在不同版本中存在差异:

## SpringBoot 1.x的AOP顺序
1. **默认代理方式**:基于JDK动态代理(接口)或CGLIB(类)
2. **执行顺序**:  
   - 按`@Order`注解值升序执行`@Before`  
   - 按`@Order`降序执行`@After`/`@AfterReturning`/`@AfterThrowing`  
   - 同优先级时按切面声明顺序执行

## SpringBoot 2.x的变化
1. **默认代理策略**:2.x开始强制使用CGLIB代理(可通过`spring.aop.proxy-target-class=false`切换)  
2. **执行顺序调整**:  
   - 引入`@Aspect`的`DeclarePrecedence`机制  
   - 相同`@Order`值时,2.x可能因代理方式变化导致执行顺序与1.x不一致

> 建议:显式使用`@Order`注解控制顺序,避免依赖默认行为。

(全文约200字,涵盖核心差异和版本特性)

推荐阅读:
  1. Spring AOP是如何运行的
  2. CSS编码顺序是怎样的

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

spring boot aop

上一篇:Linux系统的服务器上如何配置电信网通双IP

下一篇:Java如何获取网络302重定向URL的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》