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

相关推荐
默 语31 分钟前
Spring-AI vs LangChain4J:Java生态的AI框架选型指南
java·人工智能·spring·ai·langchain·langchain4j·spring-ai
小花1 小时前
SpringMvc中的拦截器
java·spring·springmvc
xing-xing2 小时前
Java大模型开发框架Spring AI
java·人工智能·spring
y1y1z2 小时前
Spring Security教程
java·后端·spring
谷哥的小弟2 小时前
Spring Framework源码解析——ConfigurableEnvironment
java·spring·源码
Jul1en_4 小时前
【Spring】实现验证码功能
java·后端·spring
小光学长4 小时前
ssm农民养殖经验交流与分享平台bc046578(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring
在坚持一下我可没意见4 小时前
Spring 开发小白学习过程中常用通用配置文件,即拿即用!(持续更新中)
java·数据库·后端·学习·spring·tomcat·mybatis
m0_740043734 小时前
SpringBoot03-Mybatis框架入门
java·数据库·spring boot·sql·spring·mybatis
默 语4 小时前
用Java撸一个AI聊天机器人:从零到一的踩坑实录
java·人工智能·spring·ai·机器人·spring ai