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面向切面编程它的强大之处在于将非业务逻辑集中管理,让我们的代码更加简洁高效!!!

相关推荐
都叫我大帅哥4 小时前
Spring @Transactional 注解完全指南
java·spring
逃逸线LOF8 小时前
Spring配置数据源{连接池}(Druid、c3p0)
java·数据库·spring
杨运交9 小时前
[055][调度模块]Spring动态任务调度框架的设计与实现
java·后端·spring
zzzzzz31015 小时前
别让大模型直接碰业务:我在 Spring Boot 里给 AI 操作加了一道“可拒绝的闸门”
人工智能·spring boot·spring
lemon_sjdk18 小时前
Reactor几个重要的接口(1)
java·spring·webflux
城管不管1 天前
ReAct、Plan-and-Execute、Reflection 三大智能 Agent 范式核心区别
java·人工智能·算法·spring·ai·动态规划
zzzll11112 天前
Spring Security 安全框架:从入门到实战
java·安全·spring
zzzll11112 天前
Spring Cloud 微服务:从入门到实践
spring·spring cloud·微服务
都叫我大帅哥2 天前
Spring Data JPA 查询之道:方法命名与示例查询完全指南
java·后端·spring
重庆小透明2 天前
带你从不同视角了解三大MQ
java·学习·spring·kafka·rabbitmq·rocketmq