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

相关推荐
Leo July6 小时前
【Java】Spring Security 6.x 全解析:从基础认证到企业级权限架构
java·spring·架构
雨中飘荡的记忆8 小时前
深度详解Spring Context
java·spring
yqd6668 小时前
SpringSecurity的使用
java·spring
Mr__Miss11 小时前
JAVA面试-框架篇
java·spring·面试
蓝眸少年CY12 小时前
(第十二篇)spring cloud之Stream消息驱动
后端·spring·spring cloud
码界奇点13 小时前
基于SpringBoot+Vue的前后端分离外卖点单系统设计与实现
vue.js·spring boot·后端·spring·毕业设计·源代码管理
康小庄14 小时前
浅谈Java中的volatile关键字
java·开发语言·jvm·spring boot·spring·jetty
0和1的舞者16 小时前
基于Spring的论坛系统-前置知识
java·后端·spring·系统·开发·知识
J_bean16 小时前
自定义 Spring 定时任务使用的线程池
spring·scheduled·定时任务线程池
鸡蛋豆腐仙子20 小时前
Spring的AOP失效场景
java·后端·spring