位置: IT常识 - 正文

【Spring】一文带你吃透AOP面向切面编程技术(上篇)(spring的文章)

编辑:rootadmin
【Spring】一文带你吃透AOP面向切面编程技术(上篇)

推荐整理分享【Spring】一文带你吃透AOP面向切面编程技术(上篇)(spring的文章),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:spring的短文,spring的dao,spring的内容,spring范文,spring中,spring中,spring中,spring中,内容如对您有帮助,希望把文章链接给更多的朋友!

个人主页: 几分醉意的CSDN博客_传送门

文章目录💖AOP概念✨AOP作用✨AOP术语✨什么时候需要用AOP💖Aspectj框架介绍✨Aspectj的5个通知注解✨Aspectj切入点表达式✨前置通知@Before💖投票传送门(欢迎伙伴们投票)💖AOP概念

什么是AOP?

AOP(Aspect Orient Programming):面向切面编程

Aspect:表示切面,给业务方法增加的功能,叫做切面。切面一般都是非业务功能,而且切面功能一般都是可以复用的。例如日志功能,事务功能,权限检查,参数检查,统计信息等等。

Orient:面向,对着

Programming:编程。

怎么理解面向切面编程? 以切面为核心设计开发你的应用。1)设计项目时,找出切面的功能。2)安排切面的执行时间,执行的位置。

✨AOP作用

1. 让切面功能复用 2. 让开发人员专注业务逻辑。提高开发效率 3. 实现业务功能和其他非业务功能解耦合。 4. 给存在的业务方法,增加功能,不用修改原来的代码

✨AOP术语

AOP中重要的三个要素:Aspect,Pointcut,Advice.这个概念的理解是:在Advice的时间,在Pointcut的位置, 执行Aspect。

Aspect:切面,给业务方法增加的功能。

JoinPoint:连接点,连接切面的业务方法。在这个业务方法执行时,会同时执行切面的功能。

【Spring】一文带你吃透AOP面向切面编程技术(上篇)(spring的文章)

Pointcut:切入点,是一个或多个连接点集合。表示这些方法执行时,都能增加切面的功能。表示切面执行的位置。

target:目标对象,给那个对象增加切面的功能,这个对象就是目标对象。

Advice:通知(增强),表示切面的执行时间。在目标方法之前执行切面,还是目标方法之后执行切面。

AOP是一个动态的思想。在程序运行期间,创建代理(ServcieProxy),使用代理执行方法时,增加切面的功能。这个代理对象是存在内存中的。

✨什么时候需要用AOP

你要给某些方法增加相同的一些功能。源代码不能改。给业务方法增加非业务功能,也可以使用AOP。

💖Aspectj框架介绍

AOP技术思想的实现:使用框架实现AOP。实现AOP的框架有很多。有名的两个

1. Spring:Spring框架实现AOP思想中的部分功能。Spring框架实现AOP的操作比较繁琐,笨重。 2. Aspectj:独立的框架,专门做AOp的,功能最强大的。属于Eclipse。

而我下面主要介绍的就是Aspectj框架来实现Aop,Aspectj框架可以使用注解和xml配置文件两种方式实现AOP。

✨Aspectj的5个通知注解

Aspectj表示切面执行时间,用的通知(Advice)。这个通知可以使用注解表示。讲5个注解,表示切面的5个执行时间,这些注解叫做通知注解。

@Before :前置通知

@AfterRetunring: 后置通知

@Around: 环绕通知

@AfterThrowing:异常通知

@After:最终通知

✨Aspectj切入点表达式

Pointcut 位置

Pointcut用来表示切面执行的位置,使用Aspectj中切入点表达式。

切入点表达式语法:execution(访问权限 方法返回值 方法
本文链接地址:https://www.jiuchutong.com/zhishi/299635.html 转载请保留说明!

上一篇:AI遮天传 ML-无监督学习(遮天传贴吧)

下一篇:Node.js | 从前端到全栈的必经之路(nodejs如何与前端交互)

  • 分公司非独立核算可以改为独立核算吗
  • 坏账准备计入营业外支出还是资产减值损失
  • 所得税忘了计提如何做会计分录还有结转
  • 固定资产替换公式
  • 增值税普通电子发票可以抵税吗
  • 现金折扣不考虑增值税什么意思
  • 营改增后转让土地使用权增值税
  • 增值税发票做假什么后果
  • 资源税法律制度PPT免费下载
  • 公司买卖股票如何账务处理
  • 增值税发票如何读入金税盘
  • 总资产周转率计算公式用不用乘100%
  • 2017企业所得税小微企业优惠政策
  • 劳务费代驾计入什么科目?
  • 收到上级补助收入怎么记账
  • 建筑公司工地买空调
  • 对方已经认证的红字发票怎么开
  • 欠税不交的后果 个人
  • system idle process是什么进程(CPU的空闲率)
  • thinkphp d方法
  • uniapp微信小程序支付流程
  • 前端字符长度限制
  • 图文详解:台盆柜安装的全过程
  • 显示器显示频率设置
  • 收回已确认的坏账准备为什么在贷方
  • 结转代销成本
  • 在建工程转无形资产 会计准则
  • ThinkPHP中Common/common.php文件常用函数功能分析
  • php判断是否连接数据库
  • 全网首发是什么意思
  • 计算机视角技术
  • 旅游业哪些发票需要交税
  • 处置固定资产涉税
  • 应收票据包括哪些项目内容
  • 其他综合收益在报表中的位置
  • 投标保证金属于什么费用
  • 合并报表中为什么要抵损益
  • 文明手语动作
  • mysql中的外键的定义
  • 自查补税行为有哪些方面
  • 购买金税盘是全额抵扣吗
  • 固定资产的货币资金包括
  • 开具免税的发票,"税率"栏如何填开?
  • 会计利润属于什么会计科目
  • 长期待摊费用怎么算出来的
  • 业委会究竟在小区起什么作用
  • 高速公路通行费可以抵扣进项税吗
  • 坏账准备的账务处理
  • 债权投资相关科目
  • 工业企业外购存货的实际成本不包括
  • 股东借款转实缴资本
  • 建筑业农民工工资个税合理避税
  • 预收账款借贷方向增减
  • 案例分析应收账款管理存在的问题
  • 新冠肺炎疫情相关租金减让
  • 往来账清账
  • 企业如何科学设计产品
  • sqlserver游标的使用
  • sql 关系数据库
  • mysql总是安装失败
  • Win2008 Server Core如何操作?5个步骤学会Win2008 Server Core操作
  • win8局域网共享设置
  • Windows Server 2008禁止模块安装提升网络性能
  • linux wk
  • mac safari浏览历史
  • linux网络不可达是什么原因
  • win8安装itunes
  • linux doc
  • PasSrv.exe - PasSrv是什么进程 有什么用
  • Android 中的guideline
  • unity3d入门教程中文图解
  • css网页布局方式
  • javaweb开发技术有哪些
  • bud3d跑酷
  • jQuery插件封装时如要实现链式编程,需要
  • jQuery Ajax 上传文件处理方式介绍(推荐)
  • 湖南国税电子税务局网
  • 没工作个人所得税怎么交
  • 个人所得税app密码给别人有风险吗
  • 宁波新注册公司什么时候开始报税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设