(2)默认标签的解析

雪亮工程视频联网技术详解:视综平台主流接入方式与协议分析 随着雪亮工程建设的深入,视频资源的汇聚与共享成为核心需求。本文简要剖析了雪亮视综平台下的视频联网接入技术,重点讲解了主流接入方式的区别与选型,并深入探讨了平台内部及跨平台的视频资源共享机制(含级联与推送模式),旨在为安防开发人员和系统集成商提供清晰的架构思路与技术参考。 阅读详情

默认标签的解析是在parseDefaultElement之中进行的
这里写图片描述
分别对4种不同标签做了不同处理,最为核心的是bean标签。
这里写图片描述
(1)BeanDefinitionHolder bdHolder = delegate.parseBeanDefinitionElement(ele);
委托BeanDefinitionDelegate类的parseBeanDefinitionElement方法进行元素解析。
这里写图片描述
这里写图片描述
上面的代码说明默认bean名称是id,如果没有id选择别名的第一个作为bean的名称
checkNameUniqueness检测名称的唯一性。
这边我刚开始看的时候有个疑问,如果id为空,name也为空的时候是怎么处理?
看下后面部分
这里写图片描述
如果name依然为空,那么会使用spring的默认规则进行生成beanName。

但是这个为什么会发生在checkNameUniqueness之后呢?
这里写图片描述
这个就不清楚为什么了直接将空值传进去吗 ??

其实是空字符串不会返回this.error(),所以每次加个空值进去也没有什么关系。

总结一下步骤:
1.提取元素中的id和name属性
2.进一步解析其他所有属性并统一封装至GenericBeanDefinition类型的实例中
3.如果检测到bean没有指定beanName,那么使用默认规则为此Bean生产beanName
4.将获取到的信息封装到BeanDifinitionHolder的实例中

详细看下第二步
这里写图片描述
这里写图片描述

Qemu开发ARM篇-3、qemu运行uboot演示 在上一篇文章中,我们搭建了交叉编译工具链,并成功进行了uboot的交叉编译,在该篇中,我们将演示如何利用qemu运行上一篇中交叉编译的uboot程序。 阅读详情

相关推荐

VMware ESXI 7.0实战:4T硬盘RAID1配置与性能调优全记录

本文详细记录了在VMware ESXI 7.0环境下,为Dell服务器配置两块4T硬盘组建RAID1并进行深度性能调优的全过程。文章重点解析了RAID控制器写入策略(Write-Back with BBU)、读取策略(Read-Ahead)的关键选择,并深入探讨了在ESXI虚拟机层面通过选用PVSCSI控制器、调整虚拟磁盘缓存策略(scsiX:Y.caching)等技巧,以最大化满足数据分析等IO密集型工作负载的需求,最终实现性能的显著提升。

gaochao的博客 258

spring 源码分析--IOC容器初始化六

 上一节将xml文档解析为DOM ,并且创建了一个 BeanDefinitionParserDelegate 类型的对象,在这一节,将使用这个对象来完成对bean的装载工作。   2.1.1.1 parseBeanDefinitions (root, delegate): 该方法体完成注册过程。   =====================================...

iteye_17060的博客 146

银河麒麟V10安装docker

最近在做的一个信创项目使用的操作系统是银河麒麟高级服务器V10,在安装docker时,会遇到下面的错误。 nothing provides fuse-overlayfs >= 0.7 needed by docker-ce-rootless-extras-20.10.0-3.el7.x86_64 经过分析,以下依赖包是centos系统中的包,所以需要给kylinos创建一个合适的centos源。经过实验,Kylin Linux Advanced Server V1

m0_38004228的博客 4907

Spring源码解析笔记2——默认标签的解析

继续前面的this.parseDefaultElement(ele, delegate)讨论。 //分别对4种不同的标签(import,alias,bean,beans)做了不同的处理。 private void parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate) { if(deleg

xyh的博客 689

Silvaco TCAD | GaN HEMT器件仿真与高频功率应用实战

本文详细介绍了使用Silvaco TCAD进行GaN HEMT器件仿真的全流程,涵盖器件结构设计、极化效应建模、高频特性分析及功率损耗优化。通过实战案例展示了GaN HEMT在电动汽车电驱和快充模块等高频功率应用中的性能优势与效率提升策略,为工程师提供可靠的仿真方法与设计验证手段。

desk3的博客 183

告别绕线!用Altium Designer从零设计一个PCB平面变压器(附3D模型)

本文详细介绍了如何使用Altium Designer从零设计一个PCB平面变压器,包括磁芯选型、电气参数计算、PCB设计实战技巧以及3D验证与生产输出。通过将绕组直接集成到PCB层中,配合嵌入式磁芯,实现了小型化、高功率密度的电源设计,适用于中低电流、高频应用场景。附3D模型,帮助读者快速掌握这一创新设计流程。

weixin_33716154的博客 442

【PowerDesigner】Constraint name uniqueness问题及处理

使用PowerDesigner生成数据库脚本时报 Constraint name uniqueness 错误: 双击每行错误,发现外键引用的名字有重复的: 惯性去网上找解决办法,找到的主要是两个方法: 1.使用Automatic Correction 右键错误行,菜单中选择Automatic Correction,自动更正错误。 这样Constraint name 就会自

sdm_seven的专栏 1万+

C++ 程序稳定运行一段时间后异常中止?vc6 运行库的bug!!!

事件查看器提示:错误应用程序 xxxxxxx.exe,版本 0.0.0.0,错误模块 MSVCRTD.DLL,版本 6.0.9782.0,错误地址 0x00012b40。这是一个通信方面的软件,需要长期运行,在压力测试时,高负荷连续运行一定天数时必定崩溃,而且都是在msvcrtd.dll中崩溃。后来在dump文件中发现调用栈在是MSVCRTD.DLL模块,跟踪代码发现是在void * __cdecl _heap_alloc_dbg(        size_t nSize,        int nBloc

qingflying的专栏 2679

Spring-IOC之bean元素id和name属性解析规则

在这里插入代码片

Daniele的博客 1700

【MATLAB代码】基于水声通信(ACOMMS)下的到达时间差(TDOA)定位的AUV自主导航例程,附完整代码

水下AUV导航系统仿真研究 本研究基于到达时间差(TDOA)技术实现了水下自主航行器(AUV)的三维导航仿真系统。系统采用四个声学信标作为定位基准,通过TDOA测量数据迭代求解AUV位置。仿真结果表明: 导航性能:系统能够有效跟踪AUV从起点(30,30,-20)到目标点(70,70,-20)的航行轨迹,定位误差保持在合理范围内。 误差分析:定位误差变化曲线显示系统具有稳定的定位精度,平均误差为0.5米左右。 技术特点:采用两步最小二乘迭代算法求解非线性TDOA方程,提高了定位精度和计算效率。 该仿真系统为

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 320

【Flink】FlinkSQL如何触发执行计算

Table (通过 StatementSet.addInsert() 输出给某个 Sink)和 INSERT 语句 (通过调用 StatementSet.addInsertSql())会先被缓存到 StatementSet 中,StatementSet.execute() 方法被调用时,所有的 sink 会被优化成一张有向无环图。该方法是用来将一个表的内容插入到目标表中,一旦该方法被调用, TABLE API 程序立即被翻译。该方法是用来执行一个 SQL 语句,一旦该方法被调用, SQL 语句立即被翻译。

一杯咖啡半杯糖的博客 1006

Power Designer Check Model提示Role name uniqueness

今天在用PowerDesign画类图时,生成Java代码出现了Role name uniqueness错误,根据提示是使用关联的地方出现了错误。 这是发生错误时的类图 根据提示应该是角色什么要唯一,应该是类中的出现了相同的变量名导致的。后来将两个类中的变量名后分别添加1,2后生成通过,但是代码中还是出现了以前的变量名,到这里才发现导致这个错误的真正原因是使用关联时代码会自动生成一个成员

qq_31258245的博客 1423

腾讯Android开发面试准备指南及参考答案

腾讯元宝高级Android开发职位面试准备指南 该职位要求扎实的Kotlin基础、架构设计能力和性能优化经验,重点关注Android客户端开发。面试流程约3轮,支持线上面试,流程较快。候选人需准备以下核心内容: 基础技术:Kotlin特性、Android开发生命周期、多线程编程 架构设计:MVVM/MVI模式应用、组件化解耦方案 性能优化:流畅度提升、内存管理、启动时间优化等实战案例 加分技能:Jetpack Compose开发、音视频处理、跨平台开发经验 建议结合项目经验准备具体案例,突出技术深度和问题解

郑伟强dev的专栏 1194

2.默认标签的解析(BeanDefinition的创建)

spring 默认标签的解析,主要从源码方面详细的解析了由xml转化为一个个BeanDefinition的过程

qq_37133838的博客 1119

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Spring源码解析——2、默认标签的解析

Spring源码深度解析——2、默认标签的解析 主要在BeanDefinitionParserDelegate 这个类中处理。 默认标签的解析是在parseDefaultElement函数中进行的,函数逻辑一目了然,分别对四种不同标签(import、alias、bean和beans)做了不同的处理。 1、bean标签的解析及注册 1.1解析beanDefinition 在函数parseBeanD...

大智的博客 269

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Spring——2. 默认标签的解析

文章目录1. bean标签的解析及注册1.1 解析BeanDefinition1.1.1 创建用于承载属性的 BeanDefinition1.1.1.1 AbstractBeanDefinition1.1.1.2 GenericBeanDefinition1.1.2 解析各种属性1.1.3 解析子元素 meta1.1.4 解析子元素 lookup-method1.1.5 解析子元素 replaced-method1.1.6 解析子元素 constructor-arg1.1.7 解析子元素 property1

m0_52325992的博客 366

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

spring框架2 - 默认标签解析

BeanDefinition是配置文件中元素标签在Spring容器中的表现形式,也就是说,它 是用来承载bean信息的。其中解析内容包括:singleton属性、scope属性、abstract属性、lazy-init属性、autowire属性、 * depends-on属性、autowire-candidate属性、primary属性、init-method属性、destroy-method属性、factory-method属性、factory-bean属性。举例:bean.xml中的一个bean。

QiAn的博客 922

spring源码-2.2.默认标签的解析

上一节中,我们详细分析了spring在解析xml,创建beanFactory的前期准备工作,这一节我们将会详细分析一下spring是如何解析系统默认标签的。 首先进入解析默认标签方法的入口,parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate): private void parseDefaultElement...

mazhen1991的博客 1429

Spring源码深度解析(2)——默认标签的解析

接着上一节,我们继续讲解 parseDefaultElement是如何实现的。 首先我们需要知道:默认标签的解析是在 parseDefaultElement 函数中进行的,函数中的功能逻辑一目了然,分别对4种不同的标签:【import】、【alias】、【bean】和【beans】做了不同的处理。 上面的图是上一节中的最后一张图,我们从这张图继续分析。 因为这四种标签中,bean 标签最难理解...

想当厨子的程序媛 324

2-Spring源码解析之默认标签的解析(1)

Spring中的标签包括【默认标签】和【自定义标签】两种。 默认标签的解析是在 DefaultBeanDefinitionDocumentReader 类的 parseDefaultNamespace 方法中进行。 我们先来看一下parseDefaultNamespace方法的具体实现。 private void parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate) { // 对 import 标签

想当厨子的程序媛 435

Spring源码解析(2)之默认标签的解析(一)

二、默认标签的解析 spring中的标签包含默认标签和自定义标签两种,而两种的标签的解析方法打不通,这边重点详细的分析默认标签的解析过程 默认标签解析是在DefaultBeanDefinitionDocumentReader类的parseDefaultElement方法中,方法中对4中不同的标签做了不同的处理(import、alias、bean和beans)。源码如下: private vo...

qq_25011427的博客 591

Spring源码学习(2)——默认标签的解析

上一篇随笔说到Spring对于默认标签和自定义标签的解析方法是不同的,这里详细看一下Spring对于默认标签的解析。 private void parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate) { if(delegate.nodeNameEquals(ele, "impor...

weixin_34293911的博客 131

spring源码学习(2):默认标签的解析,注册BeanDefinition

spring中的标签包括默认标签和自定义标签两种,默认标签的解析是在parseDefaultElement函数中进行的 private void parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate) { //对import标签的处理 if (delegate.nodeNameEquals(ele, IMPORT_ELEMENT)) { importBeanDefinitionResource(ele);

qq_35217284的博客 359

spring5/springboot2源码学习 -- xml文件的解析之默认标签的解析

xml文件的解析之bean标签的解析

yuxiuzhiai的博客 624

Spring之默认标签的解析(三) bean标签的解析及注册(2)—— BeanDefinition和其属性的解析

上文中我们看了函数**parseBeanDefinitionElement**,其中调用了上述方法**createBeanDefinition**,目的就是为了创建**BeanDefinition**,而**BeanDefinition**的作用是什么呢?

qq_40540178的博客 435

Spring源码解析(2)之默认标签的解析(二)

首先感谢 《Spring源码深度解析》郝佳,让我对spring源码有了更深的理解,本篇文章主要是对《Spring源码深度解析》解读的笔记以及自己对书本解读后的理解,本篇文章是对上面一篇Spring源码解析(2)之默认标签的解析(一)的衔接。 ⑥:解析子元素constructor-arg       constructor-arg的使用: <bean id="car" class="zhu...

qq_25011427的博客 1043
上一篇: Profile属性的使用
下一篇: 自定义标签的使用
sicofield
博客等级 码龄18年 169粉丝 169原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值