SpringAOP概念
AOP 简介
AOP(Aspect-Oriented Programming, 面向切面编程): 是一种新的方法论, 是对传统 OOP(Object-Oriented Programming, 面向对象编程) 的补充.
AOP 的主要编程对象是切面(aspect), 而切面模块化横切关注点.
在应用 AOP 编程时, 仍然需要定义公共功能, 但可以明确的定义这个功能在哪里, 以什么方式应用, 并且不必修改受影响的类. 这样一来横切关注点就被模块化到特殊的对象(切面)里.
AOP 的好处:
每个事物逻辑位于一个位置, 代码不分散, 便于维护和升级
业务模块更简洁, 只包含核心业务代码.
AOP
AOP 术语
切面(Aspect): 横切关注点(跨越应用程序多个模块的功能)被模块化的特殊对象
通知(Advice): 切面必须要完成的工作
目标(Target): 被通知的对象
代理(Proxy): 向目标对象应用通知之后创建的对象
连接点(Joinpoint):程序执行的某个特定位置:如类某个方法调用前、调用后、方法抛出异常后等。连接点由两个信息确定:方法表示的程序执行点;相对点表示的方位。例如 ArithmethicCalculator#add() 方法执行前的连接点,执行点为 ArithmethicCalculator#add(); 方位为该方法执行前的位置
切点(pointcut):每个类都拥有多个连接点:例如 ArithmethicCalculator 的所有方法实际上都是连接点,即连接点是程序类中客观存在的事务。AOP 通过切点定位到特定的连接点。类比:连接点相当于数据库中的记录,切点相当于查询条件。切点和连接点不是一对一的关系,一个切点匹配多个连接点,切点通过 org.springframework.aop.Pointcut 接口进行描述,它使用类和方法作为连接点的查询条件。
Spring AOP
AspectJ:Java 社区里最完整最流行的 AOP 框架.
在 Spring2.0 以上版本中, 可以使用基于 AspectJ 注解或基于 XML 配置的 AOP
SpringAOP概念相关推荐
- Spring-AOP概念及使用教程
Spring-AOP 1.AOP 基本概念 (1)面向切面编程(方面),利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得 业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发 ...
- SpringAOP原理及应用
SpringAOP原理及应用 一.背景 什么是AOP,英文直译是Aspect-OrientedProgramming,面向方面编程.从名字也可以看出,如果把我们代码的执行过程看成一条圆柱体,AOP就是 ...
- springAOP面向切面编程以及对事务的支持
目录 一.springAOP 面向切面编程 (一)springAOP概念解析 (二)springAOP的XML文件配置 1.入门案例 2.AOP的工作流程 3.通知类型 4.切点表达式 5.配置所有通 ...
- 总结:SpringAOP(一、概念和代理)
Spring core模块 :Spring的核心功能,主要是IOC容器,解决对象的创建和处理对象的依赖关系. Spring web模块:spring对web框架的整合的支持. Spring Aop模块 ...
- Spring事务管理 与 SpringAOP
1,Spring事务的核心接口 Spring事务管理的实现有许多细节,如果对整个接口框架有个大体了解会非常有利于我们理解事务,下面通过讲解Spring的事务接口来了解Spring实现事务的具体策略. ...
- Spring-AOP 基于Schema配置切面
概述 简单切面配置实例 示例 配置命名切点 示例 各种增强类型的配置 示例 绑定连接点信息 Advisor配置 概述 如果项目不能使用Java5.0, 那么就无法使用基于@AspectJ注解的切面. ...
- Spring-AOP 切点/切面类型和创建切面
概述 静态方法匹配器 动态方法匹配器 六种切点类型 静态方法切点StaticMethodMatcherPointcut 动态方法切点DynamicMethodMatcher 注解切点Annotatio ...
- Spring AOP(一) AOP基本概念
Spring AOP 基本概念 术语 容易理解 举个栗子给大家讲一下代理: 什么是AOP? 基本术语 (1)切面(Aspect) (2) 目标对象(Target) (3) 连接点(JoinPoint) ...
- java 切面获取参数_每天分享一点Java知识(spring-aop)
每天分享一点Java知识,码字不易,喜欢的可以关注一波,共同学习.20191127 本篇将详细讲解SpringAOP的概念以及如何实现. 1. 何为AOP AOP:面向切面编程,相对于OOP面向对象编 ...
最新文章
- 【Qt】设置窗口透明度
- 特征选择之嵌入法、嵌入法、排列重要性
- CF385C Bear and Prime Numbers
- 【深度学习】CVPR 2021 全部论文链接公布!最新1660篇论文合集!附下载链接
- R语言中strptime返回值永远为NA的问题
- 【软件测试】结构化分支和循环语句的白盒测试
- Java笔记-AnnotationConfigApplicationContext在Spring中的例子
- python为什么用class_python为什么会有@classmethod?
- Python提取Word文档中所有超链接地址和文本
- Java 集合系列:Vector源码深入解析
- 程序设计基础(C语言)教学案例-序言
- python的作用域分别有几种_Python中作用域的深入讲解
- sublime双击选中$
- Pdfminer 分析
- Python实现借助聚合数据API接口生成某一年的节假日对照表
- 公路路基路面回弹弯沉检测技术(转载)
- RandomAccess接口使用
- 网狐卓越版本内核引擎、卓越内核(源码,源码,源码)
- 【OR】YALMIP Sum of squares(SOS)规划
- 乐鑫科技2021提前批软件类笔试题
热门文章
- 简单的实现图片预览, 通过原生ajax以及 jQuery两种方法实现图片预览,有更好的办法可以留言喔...................
- 用Express、MySQL搭建项目(接口以及静态文件获取、文件上传等)
- Oracle把逗号分割的字符串转换为可放入in的条件语句的字符数列
- linux下vi的一些简单的操作
- SpringMVC(十一) RequestMapping获取Cookie值
- 面试时经常问到的系统应用优化问题总结
- C#实现RSA加密和解密详解
- VirtualBox 安装失败的主要原因 不是正版的OS,系统主题需要还原
- 用java分组查elasticsearch
- http-helloworld