V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
cs4814751
V2EX  ›  问与答

Spring AOP 怎么让同一个切点的多个增强有选择的执行?

  •  
  •   cs4814751 · 2017-07-29 13:10:38 +08:00 · 1747 次点击
    这是一个创建于 2665 天前的主题,其中的信息可能已经有所发展或是发生改变。

    面试被问到了,发现还真没考虑过。 假设 X Y 是两个队同一个切点 A 的增强,我怎么才能让 X 织入,Y 不织入,或者 Y 织入,X 不织入,这样有选择性的增强呢?

    5 条回复    2017-07-30 15:05:57 +08:00
    viakiba
        1
    viakiba  
       2017-07-29 13:25:21 +08:00
    cs4814751
        2
    cs4814751  
    OP
       2017-07-29 13:56:51 +08:00
    @viakiba 不大一样,我的意思是 一个连接点被多个切面匹配了 ,怎么有选择的织入这几个切面。这个 blog 说的是让一个切面去匹配多个连接点,不是一个意思。
    Presageee
        3
    Presageee  
       2017-07-29 14:57:07 +08:00
    我的看法是需要通过函数名或者注解的值来进行选择
    cs4814751
        4
    cs4814751  
    OP
       2017-07-29 18:01:48 +08:00
    @Presageee 对 我之前试了下 可以通过注解来解决 但是只能通过类注解 不知道有没有打在被增强的方法上的注解可以实现
    Presageee
        5
    Presageee  
       2017-07-30 15:05:57 +08:00 via iPhone
    @cs4814751 可以的,可以获取到 method 对象,通过 method 对象就能拿到方法注解
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1027 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:03 · PVG 06:03 · LAX 14:03 · JFK 17:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.