Day2 Spring

news2024/12/23 9:57:20

1 BeanFactory 与ApplicationContext的关系

BeanFactory与ApplicationContext的关系

  • BeanFactory是Spring的早期接口,称为Spring的Bean工厂,ApplicationContext是后期更高级接口,称之为Spring 容器;

  • ApplicationContext在BeanFactory基础上对功能进行了扩展,例如: 监听功能、国际化功能等。BeanFactory的API更偏向底层,ApplicationContext的API大多数是对这些底层API的封装

  • Bean创建的主要逻辑和功能都被封装在BeanFactory中,ApplicationContext不仅继承了BeanFactory,而目ApplicationContext内部还维护着BeanFactory的引用,所以,ApplicationContext与BeanFactory既有继承关系,又有融合关系。

  • 4)Bean的初始化时机不同,原始BeanFactory是在首次调用getBean时才进行Bean的创建,而ApplicationContext则是配置文件加载,容器一创建就将Bean都实例化并初始化好

验证第三条:Application是对BeanFactory进行了扩展,但是内部依然维护了BeanFactory的引用。

2 BeanFactory 的继承体系

利用Ctrl + H的快捷键:

BeanFactory是核心接口,项目运行过程中肯定有具体实现参与,这个具体实现就是DefaultListableBeanFactory而ApplicationContext内部维护的Beanfactory的实现类也是它

重要的属性:bean标签,key为id,beandefinition为一个类,其中最重要的是beanClass属性,存储bean标签中的class值

private final Map<String, BeanDefinition> beanDefinitionMap = new ConcurrentHashMap<>(256);

2 ApplicationContext 的继承体系

只在Spring基础环境下,即只导入spring-context坐标时,此时ApplicationContext的继承体系

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/147214.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytorch 多层感知机

一、什么是多层感知机 多层感知机由感知机推广而来&#xff0c;最主要的特点是有多个神经元层&#xff0c;因此也叫深度神经网络(DNN: Deep Neural Networks)。 二、如何实现多层感知机 1、导入所需库并加载fashion_mnist数据集 %matplotlib inline import torch import to…

java弹幕视频网站源码

简介 Java基于ssm的弹幕视频系统&#xff0c;用户注册后可以上传视频进行投稿&#xff0c;也可以浏览视频发送弹幕&#xff0c;在个人中心管理视频、管理弹幕、管理评论等。管理员可以管理视频弹幕评论&#xff0c;查看统计图。 演示视频&#xff1a; https://www.bilibili.c…

CVE-2020-0014 Toast组件点击事件截获漏洞

文章目录前言漏洞分析组件源码触摸属性漏洞利用POC分析漏洞复现漏洞修复总结前言 Toast 组件是 Android 系统一个消息提示组件&#xff0c;比如你可以通过以下代码弹出提示用户“该睡觉了…”&#xff1a; Toast.makeText(this, "该睡觉了…", Toast.LENGTH_SHORT)…

C语言文件操作-从知识到实践全程

目录 引入 文件的打开和关闭 文件如何使用程序来打开? 绝对路径需要转义字符 fopen函数 fclose函数 文件的打开方式(fopen第二参数const char* mode): 文件的顺序读写 fgetc和fputc的使用 fputc fgetc fgets和fputs的使用 fputs fgets perror的使用 fprint…

哪些程序员适合自由工作?(附平台推荐)

在早些时候进行远程办公&#xff0c;接私活或者跨国进行编程&#xff0c;赚点外快等也不是什么奇怪的事情。但是那时候没有人想到会把这些工作完全变成自己的主要业务——也就是我们说的自由工作。也不知道是哪一个第1个吃了螃蟹的人发现自由工作还不错&#xff0c;于是经过后面…

【JavaScript】DOM 学习总结-基础知识

获取元素方法&#xff1a; // 获取三个非常规的标签 console.log(document.documentElement) console.log(document.head) console.log(document.body)通过id/class获取&#xff1a;getElementById / getElementsByClassName // 获取常规的用id,class,tag var boxdocument.g…

Android 自定义Activity的主题

一. 前言 当在某个app中做一个新界面时, 我们要考虑一下主题风格相符合一致. 本篇文章讲解的是,如何新创建的Activity 与整个app主题符合, 特别是状态栏的颜色需要和这个app的状态栏颜色保持一致. 在读本篇文章之前, 可以移步一下笔者之前写的文章:Android style&#xf…

代码随想录算法训练营第十一天字符串 java :20. 有效的括号 1047. 删除字符串中的所有相邻重复项 150. 逆波兰表达式求值

文章目录Leetcode 20. 有效的括号题目详解数据结构 双端队列(deque)Deque有三种用途&#xff1a;思路报错Ac代码Leetcode1047. 删除字符串中的所有相邻重复项题目详解数据结构 ArrayDeque类思路AC代码150. 逆波兰表达式求值题目详解报错难点AC代码收获Leetcode 20. 有效的括号 …

系分 - 系统设计

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录系分 - 系统设计考点摘要系统设计软件设计软件架构设计结构化设计概要设计详细设计处理流程设计流程工作流活动及其所有者工作项工作流管理系统WFMS的基本功能WFMS的组成WRM流程设计工具用户界面设计/人机…

python算法与数据结构1-算法、数据结构、链表

目录1、算法的概念1.1 举例&#xff1a;1.2 算法的五大特性&#xff1a;1.3 时间复杂度1.4 空间复杂度2、数据结构2.1 内存的存储结构2.2 数据结构的分类2.3 顺序表存储方式3、链表3.1链表实现3.2链表的方法3.3链表增加节点3.4链表删除节点3.5链表总结1、算法的概念 算法与数据…

(Java高级教程)第三章Java网络编程-第三节:UDP数据报套接字(DatagramSocket)编程

文章目录一&#xff1a;Java数据报套接字通信模型二&#xff1a;相关API详解&#xff08;1&#xff09;DatagramSocket&#xff08;2&#xff09;DatagramPacket三&#xff1a;UDP通信示例一&#xff1a;客户端发送什么服务端就返回什么&#xff08;1&#xff09;代码&#xff…

k8s之ConfigMap和secret

写在前面 我们知道k8s的数据都是存储到kv数据库etcd中的&#xff0c;那么我们程序中使用到各种配置信息是否可以也存储到etcd&#xff0c;然后在pod中使用呢&#xff1f;是可以的&#xff0c;k8s为了实现将自定义的数据存储到etcd&#xff0c;定义了ConfigMap 和secret两种API…

《后端技术面试 38 讲》学习笔记 Day 01

《后端技术面试 38 讲》学习笔记 Day 01 学习目标 在2022年春节将至&#xff08;半个月&#xff09;&#xff0c;适合在这个冬天里&#xff0c;温故知新。通过学习一门覆盖面较广的课程&#xff0c;来夯实基础&#xff0c;完善自己的知识体系&#xff0c;是一个很棒的选择。 …

LCHub:未来,低代码产品矩阵是500强企业的绝佳选择

近日,国内知名咨询机LCHub发布2022《中国大型企业数字化升级路径研究》。 报告认为由于大型企业的数字化需求旺盛、购买力充足,因此国内成熟的数字化服务商普遍以大型企业为核心客户。大型企业与数字化服务商的供需磨合决定了我国数字化市场的形态,造就了我国数字化市场与海…

go map 源码逐行阅读

map粗略介绍 源码开头注释&#xff1a; A map is just a hash table. The data is arranged into an array of buckets. Each bucket contains up to 8 key/elem pairs. The low-order bits of the hash are used to select a bucket. Each bucket contains a few high-order…

Linux学习笔记——RabbitMQ安装部署

5.4、RabbitMQ安装部署 5.4.1、简介 RabbitMQ是一款知名的开源消息列队系统&#xff0c;为企业提供消息的发布、订阅、点对点传输等消息服务。 RabbitMQ在企业开发中十分常见&#xff0c;课程为大家演示快速搭建RabbitMQ环境。 5.4.2、安装 RabbitMQ在yum仓库中的版本比较老…

用于从单细胞FRET数据中提取灵敏度分布的Matlab代码

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 对于分子生物学来讲&#xff0c;生物分析手段的发展&#xff0c;是阐明机理的必要条件。在研究分子间相互作用的道路上&#xf…

Leetcode - 106 - 相交链表

160. 相交链表 题目描述 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 题目数据 保证 整个链式结构中不存在环。 注意&am…

【阶段三】Python机器学习04篇:机器学习项目实战:多元线性回归模型、岭回归模型与套索回归模型

本篇的思维导图: 一元线性回归的数学原理 一元线性回归模型又称为简单线性回归模型,其形式可以表示为如下所示的公式。 y=ax+b 其中,y为因变量,x为自变量,a为回归系数,b为截距。 如下图所示,其中y(i)为实际值,y(i)为预测值,一元线性回归的目的就是拟合出一…

Vision-Only Robot Navigation in a Neural Radiance World

Paper name Vision-Only Robot Navigation in a Neural Radiance World Paper Reading Note URL: https://arxiv.org/abs/2110.00168 TL;DR RA-L 2022 文章&#xff0c;提出在 NeRF 表达的环境中进行机器人导航及循迹任务的方法 Introduction 背景 基于 on-board 传感器…