什么是Spring IOC和Spring AOP?

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

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

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

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

相关推荐
ss2732 小时前
Java并发编程:DelayQueue延迟订单系统
java·python·算法
SHERlocked932 小时前
摄像头 RTSP 流视频多路实时监控解决方案实践
c++·后端·音视频开发
wcy_10112 小时前
七大软件设计原则
java·设计规范
invicinble2 小时前
jar包在执行的时候需要关注的细节(提供一个解构jvm问题的视角)
java·jvm·jar
麦芽糖02192 小时前
SSE介绍及使用(Server-Send Events)
java
alan07212 小时前
【Java + Elasticsearch全量 & 增量同步实战】
java·elasticsearch·jenkins
AutoMQ2 小时前
How does AutoMQ implement a sub-10ms latency Diskless Kafka?
后端·架构
Rover.x2 小时前
Netty基于SpringBoot实现WebSocket
spring boot·后端·websocket
hashiqimiya2 小时前
后端springboot的接收前端发来的数据反序列化原理
java
疯狂的程序猴3 小时前
用 HBuilder 上架 iOS 应用时如何管理Bundle ID、证书与描述文件
后端