什么是Spring IOC和Spring AOP?

IOC就是控制反转,控制反转就是对组件对象控制权的转移,从程序代码本身转移到了外部容器。它把由程序代码直接操控的对象的调用权交给容器,通过容器实现对象组件的管理和装配。

Srping IOC负责创建对象,管理对象,装配对象,配置对象,并且管理这些对象的整个生命周期。

面向切面编程(AOP)就是纵向编程。比如业务a和业务b都需要一个相同的操作 ,传统方法我们可能需要在a,b中都加入相关操作代码,而应用AOP就可以只写一遍代码,a和b可以公用这段代码。并且需要在a,b加入新的操作时,可以在不改变原本代码的情况下,灵活添加新的业务逻辑实现。

像在实际开发中,比如商品查询,促销查询等业务,都需要记录日志和异常处理等操作,AOP可以把所有的公用代码剥离出来,单独放置到某个类中进行集中管理,在运行时,由容器进行动态导入这些公用代码。

相关推荐
Victor35610 小时前
Netty(26)如何实现基于Netty的RPC框架?
后端
Victor35610 小时前
Netty(25)Netty的序列化和反序列化机制是什么?
后端
qq_124987075311 小时前
重庆三峡学院图书资料管理系统设计与实现(源码+论文+部署+安装)
java·spring boot·后端·mysql·spring·毕业设计
大学生资源网11 小时前
java毕业设计之“知语”花卉销售网站的设计与实现源码(源代码+文档)
java·mysql·毕业设计·源码·springboot
小鸡脚来咯11 小时前
Redis三大问题:穿透、击穿、雪崩(实战解析)
java·spring·mybatis
桦说编程11 小时前
并发编程高级技巧:运行时检测死锁,告别死锁焦虑
java·后端·性能优化
jiayong2311 小时前
Spring AI Alibaba 深度解析(三):实战示例与最佳实践
java·人工智能·spring
梁同学与Android11 小时前
Android ---【经验篇】ArrayList vs CopyOnWriteArrayList 核心区别,怎么选择?
android·java·开发语言
无限大611 小时前
为什么"软件测试"很重要?——从 Bug 到高质量软件的保障
后端
ss27311 小时前
从零实现线程池:自定义线程池的工作线程设计与实现
java·开发语言·jvm