Spring中AOP核心概念术语的通俗理解

简介: Spring中AOP核心概念术语的通俗理解

假设我们有一个User类,类中有下面的这些方法,我么就根据这个类来具体通俗的理解连接点、切入点、通知、切面这四个核心概念术语。


1.png


连接点(JoinPoint)


User类中的四个方法都可以被增强(加一些功能),哪些方法可以被增强,那这些方法就可以被称为连接点,所以这四个方法都可以被称为连接点。


切入点(Pointcut)


在User类中有四个方法,假如我们只增强某个方法,那这些实际被我们增强的方法就称为切入点,真正增强的方法才成为切入点,没有实际增强(可以被增强但是没有增强)的不是。


通知(增强)(Advice)


假如我们要在add方法进行之后做一些其它操作,那我们在方法进行后添加的代码部分就称为增强(通知),也就是说实际增加的逻辑部分就称为通知。


通知有多种类型:

(1)前置通知:想在add方法的前面执行的逻辑部分。

(2)后置通知:想在add方法的后面执行的逻辑部分。

(3)环绕通知:想在add方法的前面后面执行的逻辑部分。

(4)异常通知:当add方法发生异常执行的逻辑部分。

(5)最终通知:相当于java代码中的try-catch-finally中fianlly部分,如果add方法代码有异常那么后置通知就不会执行了,但是最终通知有没有异常都还是会执行。


切面(Aspect)


切面指的是一个动作或过程,指的就是把通知应用到切入点的过程,假如我们想对add方法加上增强,我们把增强的部分加上去的过程就叫切面。


以上就是对于AOP的四个核心概念术语的通俗理解


相关文章
|
1月前
|
Java API 微服务
微服务——SpringBoot使用归纳——Spring Boot中的切面AOP处理——Spring Boot 中的 AOP 处理
本文详细讲解了Spring Boot中的AOP(面向切面编程)处理方法。首先介绍如何引入AOP依赖,通过添加`spring-boot-starter-aop`实现。接着阐述了如何定义和实现AOP切面,包括常用注解如`@Aspect`、`@Pointcut`、`@Before`、`@After`、`@AfterReturning`和`@AfterThrowing`的使用场景与示例代码。通过这些注解,可以分别在方法执行前、后、返回时或抛出异常时插入自定义逻辑,从而实现功能增强或日志记录等操作。最后总结了AOP在实际项目中的重要作用,并提供了课程源码下载链接供进一步学习。
60 0
|
1月前
|
Java 开发者 微服务
微服务——SpringBoot使用归纳——Spring Boot中的切面AOP处理——什么是AOP
本文介绍了Spring Boot中的切面AOP处理。AOP(Aspect Oriented Programming)即面向切面编程,其核心思想是分离关注点。通过AOP,程序可以将与业务逻辑无关的代码(如日志记录、事务管理等)从主要逻辑中抽离,交由专门的“仆人”处理,从而让开发者专注于核心任务。这种机制实现了模块间的灵活组合,使程序结构更加可配置、可扩展。文中以生活化比喻生动阐释了AOP的工作原理及其优势。
42 0
|
2月前
|
XML Java 测试技术
Spring AOP—通知类型 和 切入点表达式 万字详解(通俗易懂)
Spring 第五节 AOP——切入点表达式 万字详解!
168 25
|
2月前
|
XML 安全 Java
Spring AOP—深入动态代理 万字详解(通俗易懂)
Spring 第四节 AOP——动态代理 万字详解!
108 24
|
3月前
|
XML Java 开发者
Spring底层架构核心概念解析
理解 Spring 框架的核心概念对于开发和维护 Spring 应用程序至关重要。IOC 和 AOP 是其两个关键特性,通过依赖注入和面向切面编程实现了高效的模块化和松耦合设计。Spring 容器管理着 Beans 的生命周期和配置,而核心模块为各种应用场景提供了丰富的功能支持。通过全面掌握这些核心概念,开发者可以更加高效地利用 Spring 框架开发企业级应用。
123 18
|
3月前
|
XML Java 开发者
Spring Boot中的AOP实现
Spring AOP(面向切面编程)允许开发者在不修改原有业务逻辑的情况下增强功能,基于代理模式拦截和增强方法调用。Spring Boot通过集成Spring AOP和AspectJ简化了AOP的使用,只需添加依赖并定义切面类。关键概念包括切面、通知和切点。切面类使用`@Aspect`和`@Component`注解标注,通知定义切面行为,切点定义应用位置。Spring Boot自动检测并创建代理对象,支持JDK动态代理和CGLIB代理。通过源码分析可深入了解其实现细节,优化应用功能。
184 6
|
3月前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
162 8
|
5月前
|
监控 安全 Java
什么是AOP?如何与Spring Boot一起使用?
什么是AOP?如何与Spring Boot一起使用?
157 5
|
5月前
|
XML 监控 安全
深入调查研究Spring AOP
【11月更文挑战第15天】
78 5
|
5月前
|
Java 开发者 Spring
Spring AOP 底层原理技术分享
Spring AOP(面向切面编程)是Spring框架中一个强大的功能,它允许开发者在不修改业务逻辑代码的情况下,增加额外的功能,如日志记录、事务管理等。本文将深入探讨Spring AOP的底层原理,包括其核心概念、实现方式以及如何与Spring框架协同工作。