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

相关推荐
云烟成雨TD16 分钟前
Spring AI Alibaba 1.x 系列【34】Human-in-the-Loop(人在回路)执行流程
java·人工智能·spring
tsyjjOvO41 分钟前
SpringCloud Alibaba Sentinel 从入门到精通
spring·spring cloud·sentinel
JAVA学习通1 小时前
本地知识库接入大模型时的权限隔离与安全设计
java·人工智能·安全·spring
zhenxin012210 小时前
Spring Boot 3.x 系列【3】Spring Initializr快速创建Spring Boot项目
spring boot·后端·spring
oyzz12011 小时前
Spring EL 表达式的简单介绍和使用
java·后端·spring
后置的猿猴12 小时前
Spring 循环依赖
java·后端·spring
热爱Java,热爱生活13 小时前
浅谈Spring三级缓存
java·spring·缓存
shark222222215 小时前
Spring 的三种注入方式?
java·数据库·spring
hERS EOUS16 小时前
Spring Boot + Spring AI快速体验
人工智能·spring boot·spring
JAVA学习通16 小时前
LangChain4j 与 Spring AI 的技术选型深度对比:2026 年 Java AI 工程化实践指南
java·人工智能·spring