AOP注解开发通知执行顺序控制与AOP注解驱动

1、AOP注解开发通知执行顺序控制(了解)

1.AOP使用XML配置情况下,通知的执行顺序由配置顺序决定,在注解情况下由于不存在配置顺序的概念的概念,参照通知所配置的方法名字符串对应的编码值顺序,可以简单理解为字母排序

  • 同一个通知类中,相同通知类型以方法名排序为准

  • 不同通知类中,以类名排序为准

  • 使用@Order注解通过变更bean的加载顺序改变通知的加载顺序

2.企业开发经验

  • 通知方法名由3部分组成,分别是前缀、顺序编码、功能描述

  • 前缀为固定字符串,例如baidu、itheima等,无实际意义

  • 顺序编码为6位以内的整数,通常3位即可,不足位补0

  • 功能描述为该方法对应的实际通知功能,例如exception、strLenCheck

    • 制通知执行顺序使用顺序编码控制,使用时做一定空间预留

    • 003使用,006使用,预留001、002、004、005、007、008

    • 使用时从中段开始使用,方便后期做前置追加或后置追加

    • 最终顺序以运行顺序为准,以测试结果为准,不以设定规则为准

 

2、AOP注解驱动

  • 名称:@EnableAspectJAutoProxy

  • 类型:注解

  • 位置:Spring注解配置类定义上方

  • 作用:设置当前类开启AOP注解驱动的支持,加载AOP注解

  • 格式:

    @Configuration
    @ComponentScan("com.itheima")
    @EnableAspectJAutoProxy
    public class SpringConfig {
    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Android中,使用AOP注解时,可以通过设置注解执行顺序控制注解执行顺序。一般情况下,注解的执行顺是按照注解声明的顺序来执行的,即先执行声明在前面的注解,后执行声明在后面的注解。但是,有时候需要改变注解执行顺序,可以通过设置注解执行顺序来实现。 在Java中,可以使用@Order注解来设置注解执行顺序。在Android中,也可以使用类似的方式来设置注解执行顺序。具体来说,可以使用@IntDef注解来定义一个注解执行顺序,然后在实际使用时,通过@IntDef注解来指定注解执行顺序。例如: ``` @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD}) @IntDef({BEFORE, AFTER}) public @interface AspectOrder { int BEFORE = 0; int AFTER = 1; int value() default BEFORE; } ``` 在上面的例子中,定义了一个@AspectOrder注解,它有两个取值:BEFORE和AFTER,分别表示注解执行顺序为前置和后置。在实际使用时,可以在需要执行的注解上加上@AspectOrder注解,并指定注解执行顺序: ``` @AspectOrder(AspectOrder.BEFORE) @OnClick(R.id.btn) public void onClickBtn() { // do something } @AspectOrder(AspectOrder.AFTER) @OnClick(R.id.btn) public void onClickBtnAfter() { // do something } ``` 在上面的例子中,定义了两个@OnClick注解,分别使用了@AspectOrder注解,并指定了注解执行顺序。这样,在执行时,就可以按照指定的顺序来执行注解了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悠然予夏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值