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

相关推荐
卓怡学长5 小时前
w263基于springboot + vue 健康饮食管理系统
java·数据库·vue.js·spring boot·spring·intellij-idea
KINGSEA_1687 小时前
Spring事务原理与高频考点
spring
Y001112368 小时前
SpringBoot 基础篇
java·spring boot·spring
闲猫1 天前
Spring AI Agentic 模式(第1部分):Agent Skills——模块化、可复用的能力
java·人工智能·spring
952361 天前
RabbitMQ-基础操作
java·spring boot·分布式·后端·spring·rabbitmq
卓怡学长1 天前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea
wang09071 天前
自己动手写一个spring之MVC_3
java·spring·mvc
闲猫1 天前
Spring AI / Models / Chat Models / Ollama
java·人工智能·spring
shepherd1261 天前
一次把 Spring MVC 文件上传参数“查没了”的排查:multipart、Filter 与 request body 的连环坑
java·后端·spring·mvc
重庆小透明1 天前
今日收获(一些个人思考)
java·spring·大模型·springai·prompt注入