Spring AOP总结

1、AOP(Aspect-Oriented Programming):面向切面编程让开发更高效。

工作中经常需要处理日志记录、事物管理、安全控制等跨越多个业务模块的公共逻辑。

它是一种编程的范式。它通过将跨多个业务模块的公共逻辑抽取并封装成独立的模块(即切面),实现业务逻辑和非业务逻辑的解耦。

2、AOP的好处:

a. 减少重复代码

b. 非业务逻辑和业务逻辑的解耦

c. 提高代码的可维护性

3、AOP 的基本概念

a. 切面:Aspect

b. 连接点:JointPoint

c. 切点:PointCut,拦截的连接点

d. 通知:Advoice,切面在连接点上的具体行为

4、使用Spring AOP构建日志切面

a. 引入依赖

b. 定义日志切面,使用@Aspect和@Component注解。

@Aspect

@component

public class LoggingAspect@{

@Before("execution(* comexample.service.*.*(...))")

public void logBefore(){

})

在执行service包下的所有方法之前记录日志

}

c. 启动AO支持:

@EnableAspectJAutoProxy:

开启自动办理,使切面生效。

总结:AOP面向切面编程它的强大之处在于将非业务逻辑集中管理,让我们的代码更加简洁高效!!!

相关推荐
daidaidaiyu22 分钟前
Spring IOC 源码学习 一文学习完整的加载流程
java·spring
Knight_AL32 分钟前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring
五阿哥永琪36 分钟前
Spring中的定时任务怎么用?
java·后端·spring
TaiKuLaHa2 小时前
Spring Bean的生命周期
java·后端·spring
刀法如飞2 小时前
开箱即用的 DDD(领域驱动设计)工程脚手架,基于 Spring Boot 4.0.1 和 Java 21
java·spring boot·mysql·spring·设计模式·intellij-idea
瑶山3 小时前
Spring Cloud微服务搭建一、Nacos配置和服务注册
spring·spring cloud·微服务·nacos
Knight_AL3 小时前
Spring 事务管理:为什么内部方法调用事务不生效以及如何解决
java·后端·spring
Chan164 小时前
场景题:CPU 100% 问题怎么排查?
java·数据库·redis·后端·spring
一只专注api接口开发的技术猿8 小时前
如何处理淘宝 API 的请求限流与数据缓存策略
java·大数据·开发语言·数据库·spring