首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Spring中的切面

Spring中的切面

作者头像
吉林乌拉
发布2019-08-28 11:23:06
发布2019-08-28 11:23:06
5210
举报
文章被收录于专栏:吉林乌拉吉林乌拉

我们在使用增强时知道,横切逻辑会添加到目标类的所有方法中,无论是方法前还是方法后。而有时,我们只想将增强添加到我们需要添加的方法中,例如添加事物管理的增强。这时我们就要使用切点来完成这种需求了。在spring中可以通过Pointcut接口描述切点。Pointcut接口由两部分组成,它们分别是ClassFilter和MethodMatcher构成。顾名思义,看名称我们知道前者是定位到某些特定的类上的,而后者是定位到某些特定的方法上的。正是因为如此,切点才可以定位到某些类的某些具体方法。

在spring中通过Advisor接口来表示切面,切面也就是同时包括横切代码和连接点的信息。切面可分为3种类型,它们分别是:

  • Advisor:一般切面,此切面横切的连接点是所有目标类的方法。
  • PointcutAdvisor: 切点切面,它包括Advice和Pointcut两个类,所以可以通过切点,来定义切面的连接点。
  • IntroductionAdisor: 引介切面,和引介增强一样它是作用在类上面的,所以它是通过ClassFilter时行定义的。
  • 静态普通方法名匹配切面
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 吉林乌拉 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档