什么是Spring IOC和Spring AOP?

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

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

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

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

相关推荐
那个失眠的夜13 小时前
Spring 的纯注解配置
xml·java·数据库·后端·spring·junit
Rust研习社13 小时前
Rust 堆内存指针 Box 详解
开发语言·后端·rust
ffqws_13 小时前
Spring Boot:用JWT令牌和拦截器实现登录认证(含测试过程和关键注解讲解)
java·spring boot·后端
小兔崽子去哪了13 小时前
华为 IODT 设备接入
java·华为
摇滚侠13 小时前
Groovy 如何给集合中添加元素
java·开发语言·windows·python
Java水解13 小时前
Go语言中的Pool:对象复用的艺术
后端·go
无巧不成书021813 小时前
Java异常体系与处理全解:核心原理、实战用法、避坑指南
java·开发语言·异常处理·java异常处理体系
8Qi813 小时前
RabbitMQ高级篇:消息可靠性、幂等性与延迟消息
java·分布式·微服务·中间件·rabbitmq·springcloud
yxl_num13 小时前
Docker 完整部署一个包含 Spring Boot(依赖 JDK)、MySQL、Redis、Nginx 的整套服务
java·spring boot·docker
大鹏说大话14 小时前
Go语言Channel并发编程实战:从基础通信到高级模式
开发语言·后端·golang