IOC 控制反转

对象的创建控制权转交给外部实体,就是控制反转。外部实体便是IOC容器。其实就是以前创建java对象都是我们new一下,现在我们可以把这个new交给IOC容器来做,new出来的对象也会交由IOC容器来管理。这个new出来的对象则称为Bean。

IOC容器

  1. 负责创建和初始化并存放Bean
  2. 创建Bean的方法有:无参构造方法、静态工厂实例化、实例工厂。默认使用无参构造方法,所以如果自定义了构造方法那就需要保证无参方法存在。
  3. 创建Bean默认是单例模式,可以修改为多例。

Bean

IOC容器创建的对象,其生命周期为:实例化、依赖注入、初始化、使用、销毁。

DI依赖注入

将容器中Bean通过注解或配置声明的依赖关系注入到另一个对象中。

AOP面向切面

使用动态代理的设计模式,可以在不改变原代码的情况下对功能进行增强。

连接点

简单说就是每个方法都是连接点

切入点

匹配连接点的式子,相当于查询条件

通知

增加的功能。有多种类型:前置通知,后置通知,环绕通知,返回通知和异常通知。

切面

描述切入点与通知关系的类

【IOC,AOP】spring的基础概念的更多相关文章

  1. Spring中三个重要概念 IOC AOP Bean

    Spring中三个重要概念 IOC AOP Bean 首先讲解一下Spring框架,以及为什么要使用Spring 框架? spring 是一个很好的容器框架, 是轻量级的IoC和AOP的容器框架,主要 ...

  2. 【spring揭秘】1、关于IOC的基础概念

    1.基础概念 IOC有三种注入方式: 1.构造方法注入,就是通过构造方法进行实例化成员属性对象,优点是实现对象之后直接就可以使用,但是参数过多也是个麻烦 2.setter方法注入,实现相应的sette ...

  3. Spring AOP(一)——基础概念

    前文的一些内容更多是针对Spring容器内部的一些特性的描述,接下来一个专题将描述Spring AOP的一些信息,配置细节等等. 介绍 面向切面编程(AOP)是一种新的针对程序结构的思路,它补足了面向 ...

  4. spring ioc 原理 spring aop原理

    大家一直都说spring的IOC如何如何的强大,其实我倒觉得不是IOC如何的强大,说白了IOC其实也非常的简单.我们先从IOC说起,这个概念其实是从我们平常new一个对象的对立面来说的,我们平常使用对 ...

  5. spring ioc aop 原理

    spring ioc aop 原理 spring ioc aop 的原理 spring的IoC容器是spring的核心,spring AOP是spring框架的重要组成部分. 在传统的程序设计中,当调 ...

  6. Spring AOP分析(1) -- 基本概念

    AOP全称是Aspect Oriented Programming,面向切面编程,是面向对象编程(OOP:Object Oriented Programming)的补充和完善.一般在系统中,OOP利用 ...

  7. IOC和AOP的一些基本概念

    IOC和AOP的一些基本概念介绍 IOC 介绍 IOC 一.什么是IOC IoC就是Inversion of Control,控制反转.在Java开发中,IoC意味着将你设计好的类交给系统去控制,而不 ...

  8. spring Ioc Aop整合

    之前用DWP项目做spring的IOC,xml总是提示有问题,之后改用maven通过. 之后将这一块的内容补充. 仔细考虑一下spring 的IOC是无处不在的,演示Aop也需要依赖spring的IO ...

  9. Spring Bean的生命周期、Spring MVC的工作流程、IOC,AOP

    1.Spring Bean的生命周期? (1)构造方法实例化bean. (2)构造方法设置对象属性. (3)是否实现aware接口,三种接口(BeanNameAware,BeanFactoryAwar ...

  10. 白话Spring(基础篇)---AOP(execution表达式)

    作为AOP的最后一节内容,我们来简单总结一下切面表达式上见的书写方法.下面的那内容有参考其他博文,在此先对开源博客的各位大神表示感谢! -------------------------------- ...

随机推荐

  1. 在映客的虚拟KTV里唱了一首“爱你”

      如果你突然打了个喷嚏 那一定就是我在想你 如果半夜被手机吵醒 啊~那是你的虚拟 KTV 在响起 2022 年 5 月 18 日,映客 App 上线了业内首个元宇宙 K 歌玩法「全景 K 歌」,给用 ...

  2. Blazor中用浏览器打开一个链接的最好方法

    适用于Blazor Wasm和Blazor SSR 调用下面的js方法 说一下为什么不用window.open,有可能被拦截是小问题,大问题是打开新页面未加载完时,回到原页面,大概率卡死,无法点击任何 ...

  3. javascript中一些难以理解的专有名词 2(也不是很专有)

    作用域链 让人迷惑的例子 function foo() {console.log(v)} function foo1() { var v = "v1" foo() console. ...

  4. Mapbox—geocoder搜索地点error eaching the server

    Mapbox-geocoder搜索地点error eaching the server --There was an errorr eaching the server 环境说明: vue3.3.4 ...

  5. 在Java中List, Set, Map是否继承自Collection接口?

    List和Set是继承自Collection接口的接口,Set不允许重复的项目,List允许重复项目, Set接口派生的类有TreeSet,HashSet,LinkedHashSet. List接口派 ...

  6. Unity的UnityStats: 属性详解与实用案例

    UnityStats 属性详解 UnityStats 是 Unity 引擎提供的一个用于监测游戏性能的工具,它提供了一系列的属性值,可以帮助开发者解游戏的运行情况,从而进行优化.本文将详细介绍 Uni ...

  7. 应用性能监控工具(pinpoint)部署

    Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控.方法执行详情查看.应用状态信息监控等功能.pinpoint使用HBASE储存数据. 下面介绍pinpoint部署及应用. 1.  安装 ...

  8. .NET5从零基础到精通:全面掌握.NET5开发技能【第二章】

    章节: 第一章:https://www.cnblogs.com/kimiliucn/p/17613434.html 第二章:https://www.cnblogs.com/kimiliucn/p/17 ...

  9. PhotoShop Beta(爱国版)安装教程-内置AI绘画功能

    PS beta版安装教程 Window和Mac版都有,里面内置AI绘画功能 ps Beta版真的太爽了,今天来和大家分享下安装教程. 很多人拿这资料卖5块 9.9 19.9,球友们直接用,建议赶紧装, ...

  10. Programming abstractions in C阅读笔记:p130-p131

    <Programming Abstractions In C>学习第52天,p130-p131,总结如下: 一.技术总结 1. pig latin game 通过pig latin gam ...