开发者社区> hello熊本> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

原 SpringFramework核心技术五:Spring AOP API

简介: 一、概念 1.Spring的切入点模型使切入点重用独立于建议类型。可以使用相同的切入点来定位不同的建议。 该org.springframework.aop.Pointcut接口是中央接口,用来将通知到特定的类和方法。
+关注继续查看

一、概念

1.Spring的切入点模型使切入点重用独立于建议类型。可以使用相同的切入点来定位不同的建议。

该org.springframework.aop.Pointcut接口是中央接口,用来将通知到特定的类和方法。完整的界面如下所示:

public interface Pointcut {

    ClassFilter getClassFilter();

    MethodMatcher getMethodMatcher();

}

将Pointcut接口拆分为两部分允许重用类和方法匹配部分,以及细粒度合成操作(例如与另一个方法匹配器执行“联合”)。

该ClassFilter接口用于将切入点限制为给定的一组目标类。如果matches()方法始终返回true,则将匹配所有目标类:

public interface ClassFilter {

    boolean matches(Class clazz);
}

该MethodMatcher接口通常更重要。完整的界面如下所示:

public interface MethodMatcher {

    boolean matches(Method m, Class targetClass);

    boolean isRuntime();

    boolean matches(Method m, Class targetClass, Object[] args);
}

该matches(Method, Class)方法用于测试此切入点是否与目标类上的给定方法匹配。可以在创建AOP代理时执行此评估,以避免需要对每个方法调用进行测试。如果2参数matches方法对给定方法返回true,并且isRuntime()MethodMatcher 的方法返回true,则将在每次方法调用时调用3参数匹配方法。这使切入点能够在执行目标通知之前立即查看传递给方法调用的参数。

大多数MethodMatchers都是静态的,这意味着它们的isRuntime()方法返回false。在这种情况下,永远不会调用3参数匹配方法。

二、使用
SpringAOP在工作中,用的地方主要是拦截器、监控和日志等模块。讲的比较抽象,如果毕竟感兴趣,请参考:
SpingAop详解

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云视觉智能 API,核心技术一站共享!
随着人工智能的技术不断成熟,AI 技术已应用到了社会的各行各业,尤其是计算机视觉技术应用更为广泛,计算机视觉(Computer Vision)是一门研究如何使机器“看”的科学,计算机视觉智能技术试图创建能够从图像视频或者多维数据中获取“信息和知识”的人工智能系统。作为AI技术的主要组成部分,计算机视觉(图像、视频、3D 图形)智能技术近年来随着深度学习、大规模数据处理能力及云基础设施的迅猛发展,逐步应用到各行各业中,发挥了越来越大的作用。
0 0
阿里云视觉智能API,核心技术一站共享!
随着人工智能的技术不断成熟,AI技术已应用到了社会的各行各业,尤其是计算机视觉技术应用更为广泛,计算机视觉(Computer Vision)是一门研究如何使机器“看”的科学,计算机视觉智能技术试图创建能够从图像视频或者多维数据中获取“信息和知识”的人工智能系统。作为AI技术的主要组成部分,计算机视觉(图像、视频、3D图形)智能技术近年来随着深度学习、大规模数据处理能力及云基础设施的迅猛发展,逐步应用到各行各业中,发挥了越来越大的作用。
0 0
《HTML5游戏编程核心技术与实战》一2.3 图像API
除了绘制常用的图形以外,canvas提供了一系列的API能够对图像进行操作,常见的图像API有以下3个方法。
1008 0
《HTML5游戏编程核心技术与实战》一2.2 图形API
创建canvas和获取了canvas的环境上下文之后,就可以开始进行绘图了。绘图的方式有两类:一类是进行图形操作,另一类是图像操作。本小节主要涉及图形相关的API,要使用canvas的API进行绘图,通常需要进行下列步骤。
1471 0
ASP.NET Core Web API 帮助页
ASP.NET Core Web API 帮助页
0 0
一文概览设计Web API 中的细节
一文概览设计Web API 中的细节
0 0
+关注
hello熊本
热衷技术,热爱生活的熊本同学!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
CUDA Math API
立即下载
阿里云 API 精选手册(Alibaba Cloud API Playbook)
立即下载
重保场景及API安全指南
立即下载