前言

IoC 是 Spring 全家桶各个功能模块的基础,是创建对象的容器。AOP 也是以 IoC 为基础,AOP 是面向切面编程,抽象化的面向对象。

Spring IoC:

Spring IoC实现控制反转,将对象的创建进行反转。常规情况下,对象都是开发者手动创建的;而使用 IoC 后,开发者不再需要创建对象,而是由 IoC 容器根据需求自动创建项目所需要的对象。可理解为工厂。

实现的方式:
(1)基于XML方式:开发者把需要的对象在 XML 中进行配置,Spring框架读取这个配置文件,根据配置文件的内容来创建对象
(2)基于注解

1、配置类:用一个 Java 类来替代 XML 文件,把在 XML 中配置的内容放到配置类中。
2、扫包+注解:更简单的方式,不再需要依赖于 XML 或者配置类,而是直接将 bean 的创建交给目标类,在目标类添加注解来创建

具体的实现方式另查,个人觉得还是扫包+注解更加方便。

Spring AOP

AOP是面向切面编程,是一种抽象化的面向对象编程,对面向对象编程的一种补充,底层使用动态代理机制来实现。多用于:
1、打印日志
2、事务
3、权限处理

作用:AOP实现了高内聚、低耦合,在切面集中实现横切关注点(缓存、权限、日志等),然后通过切点配置把代码注入到合适的位置。

比如在所有的事务的开始和结束都要打印一次日志,就可以使用AOP技术将打印日志的行为抽出去进行统一处理。

什么是Spring IoC 和 AOP?相关推荐

  1. 自己动手实现的 Spring IOC 和 AOP - 下篇

    1. 背景 本文承接上文,来继续说说 IOC 和 AOP 的仿写.在上文中,我实现了一个很简单的 IOC 和 AOP 容器.上文实现的 IOC 和 AOP 功能很单一,且 IOC 和 AOP 两个模块 ...

  2. 自己动手实现的 Spring IOC 和 AOP - 上篇

    1. 背景 我在大四实习的时候开始接触 J2EE 方面的开发工作,也是在同时期接触并学习 Spring 框架,到现在也有快有两年的时间了.不过之前没有仿写过 Spring IOC 和 AOP,只是宏观 ...

  3. Spring IoC 和 AOP

    Spring IoC 和 AOP spring框架java开发的行业标准. spring全家桶. Web:Spring Web MVC/Spring MVC,Spring Web Flux 持久层:S ...

  4. 【Spring 源码阅读】Spring IoC、AOP 原理小总结

    Spring IoC.AOP 原理小总结 前言 版本约定 正文 Spring BeanFactory 容器初始化过程 IoC 的过程 bean 完整的创建流程如下 AOP 的过程 Annotation ...

  5. 浅谈 Spring IOC和AOP

    浅谈 Spring IOC和AOP IOC 控制反转 以前创建对象的主动权和时机是由于自己把握的,现在将这种权利转移到Spring容器中,并且根据配置文件去创建对象管理对象 ioc的注入方式有三种:构 ...

  6. BeanPostProcessor —— 连接Spring IOC和AOP的桥梁

    之前都是从大Boss的视角,来介绍Spring,比如IOC.AOP. 今天换个视角,从一个小喽啰出发,来加深对Spring的理解. 这个小喽啰就是, BeanPostProcessor (下面简称 B ...

  7. Spring IOC 和 AOP 概览

    IOC(控制反转) IoC(Inversion of Control,控制倒转).所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系. 在没有IOC时,我们 ...

  8. spring - ioc和aop

    1.程序中为什么会用到spring的ioc和aop 2.什么是IOC,AOP,以及使用它们的好处,即详细回答了第一个问题 3.原理 关于1: a:我们平常使用对象的时候,一般都是直接使用关键字类new ...

  9. 再品Spring Ioc 和 Aop

    文章目录 Spring好处 IOC 基于XML和基于注解开发 基于XML开发 基于注解开发 配置类 扫包+注解 依赖注入 AOP 写在前面,这篇文章写的时候我的SSM已经学过一遍了,回头来看真的受益匪 ...

  10. 吊打面试官系列之--吃透Spring ioc 和 aop (中)

    目录 Spring SpringBean的五个作用域 SpringBean的生命周期 创建过程 销毁过程 AOP的介绍和使用 AOP的介绍 AOP的三种织入方式 操作讲解 AOP的主要名词概念 Adv ...

最新文章

  1. svn 常见问题记录
  2. 在已创建的DataTable对象中添加在首列一列
  3. 【leetcode 简单】 第五十五题 打家劫舍
  4. CTF之一次曲折获取Flag的过程
  5. 90后女博士任985高校特聘教授,这次有点不一样
  6. Java、JavaScript、C、C++、PHP、Python都是用来开发什么?赶紧来看看!
  7. 易优Eyoucms企业建站系统 1.4.2
  8. docker on spark
  9. 处理Windows快捷键占用冲突
  10. ThreadLocal介绍和源码解析
  11. 我的编程经历与我所热爱的游戏服务端开发
  12. 项目经理,你有什么优势吗?
  13. 勿以恶小而为之,勿以善小而不为
  14. 网易互联网雷火互娱22届校招及社招内推
  15. 10个最好的免费PS图象处理软件方案
  16. 深度学习实例第四部分:PaddlePaddle
  17. 手写一个垂直领域的搜索引擎
  18. Spine 骨骼动画查看器 Skeleton Viewer_官方文档中文版
  19. 最好的投资是自己,有关怎样投资自己
  20. docker部署nginx+tomcat架构

热门文章

  1. C 怎么处理windows路径_在Windows中使用msix打包工具监视注册表和文件
  2. 2019上半年中小学教资考试教育知识与能力试题(中学)——主观题
  3. 安兔兔html5 6sp,除了安兔兔跑分,还有这6种办法能证明手机强弱
  4. OPPO Enco Free2质量怎么样?降噪表现突出路上不怕吵
  5. ipython和pylab模式_matplotlib集成与pylab模式
  6. 为什么要用kubernetes
  7. Apollo:源码分析之cyber\blocker\blocker.h
  8. 新北洋SNBC U300t3 打印机驱动
  9. 如何写周报 方法 思考
  10. 使用ADB安装apk安装包