首页 > 编程语言 >spring源码具体细节 super setConfigLocations

spring源码具体细节 super setConfigLocations

时间:2022-08-28 12:12:41浏览次数:60  
标签:构造方法 配置文件 spring 占位 源码 setConfigLocations 父类 属性

 

 1 首先先调用super 父类构造方法  classPathXmlApplicaitonContext  初始化成员属性

 

 依然掉父类构造方法

 

调用父类  资源处理器  当前系统需要运行所需要的运行资源 例如 xml文件

 

 

启动容器会分配唯一id值

 

 

 

 

 -------

设置配置文件文件路径

setConfigLocations(configLocations)

 

 这里配置文件是可变参数  可以穿一个 亦可以传多个  读取当前配置文件

 

 

 

没有写构造方法 而是调用的父类的构造方法  然后子类重写了父类的构造方法

 

 

获取资源属性 和资源环境属性

 

 

 

 

 有了系统环境值 和属性值  接下来就需要解析配置文件路径的占位符

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

判断当前值是否包含${ 获取它的起始索引

 

 

 然后我们需要找到 }结尾的索引

 

截取字符串

 

 

 递归调用 解析当前占位符 里面包含了另外的占位符 spring-${abc${def}}.xml

 

 

 

 

 

 

 

从资源属性中获取username 看是否存在  如果存在 替换占位符

 

 

标签:构造方法,配置文件,spring,占位,源码,setConfigLocations,父类,属性
From: https://www.cnblogs.com/Lcch/p/16632522.html

相关文章

  • Spring源码01:环境搭建
    写在开始:这个系列会陆续更新我学习Spring源码的一些笔记与自己的理解,由于本人水平有限,难免对有些知识理解不到位,亦或者手误导致文中有不正确的地方,欢迎各位指正与探讨。......
  • Spring(二)-生命周期 + 自动装配(xml) +自动装配(注解)
    1、生命周期**Spring容器的bean**的生命周期;1.1默认生命周期1.1.1生命周期调用构造方法,创建实例对象;set方法,给实例对象赋值;init初始化方法初始化对象;(手......
  • Spring中的SPI机制
    前言在面向对象编程领域中,六大原则之一的依赖倒置原则提到的原则规定:高层次的模块不应该依赖于低层次的模块,两者都应该依赖于抽象接口;抽象接口不应该依赖于具体实现,而......
  • 理解Spring Security和实现动态授权
    一、SpringSecurity架构SpringSecurity是基于SpringAOP和Servlet过滤器的安全框架,提供全面的安全性解决方案。SpringSecurity核心功能包括用户认证(Authenticati......
  • Cannot resolve org.springframework.cloud:spring-cloud-starter-netflix-eureka-ser
    Cannotresolveorg.springframework.cloud:spring-cloud-starter-netflix-eureka-server:unknown前言:启动eureka项目,发现右侧maven中的项目dependencies报红,reimport也......
  • Spring @Repository 注解
    Spring的项目严重依赖注解。@Repository 注解在Spring2.0之前的版本中,@Repository注解可以标记在任何的类上,用来表明该类是用来执行与数据库相关的操作(即dao对象),并支......
  • Spring 最常用的几个注解
    大家都知道Spring严重依赖注解。实际开发的时候,我们用得最多的可能就是下面几个注解了。注解用途@Component最最普通的注解,表示这个类可以被注入到Spring容......
  • Spring Bean工具类
    SpringUtils工具类importcn.caijiajia.framework.util.EnvUtil;importorg.springframework.beans.BeansException;importorg.springframework.context.ApplicationCo......
  • Spring学习笔记
    Spring学习1.概述​ Spring是一个轻量级的Java开发框架,它是为了解决企业开发的复杂性而创建的,可以帮助开发人员创建对象管理对象之间的关系。​ Spring的核心是......
  • Spring @Autowired 注解静态变量
    最近应该项目的需要,需要使用一个工具类来访问数据库。但是这个工具类又被定义成静态访问了。我们也需要设置一个静态变量来访问数据库。@Autowiredprivatesta......