我接触spring已经有很长时间了,通常都只是在用它的功能,不知道实现的原理。现在终于有时间来学习下。
Spring中最经常用到的功能就是ioc,也就是我们在配置文件中配置一些bean对象,然后spring会自动初始化好bean,然后可以getBean取出来用,以及可以根据配置自动注入到一些对象中。
那我想spring的ioc一定有这么几个过程:
1、 寻找配置文件(因为我们知道spring在加载资源文件时可以有class、*、?等关键字,所以一定存在一部分功能是解析这些文件的路径的)
2、 解析配置文件(因为spring在配置的时候有很多配置项,有时候缺省,有时候配置,还可以配置默认值,这个功能是怎么做的)
3、 解析完这些配置文件spring怎么管理呢,存在哪里,怎么存
4、 Bean如何初始化
5、 GetBean的时候又执行了那些操作
带着这些问题我开始学习spring的源码了。
分享到:
相关推荐
赠送jar包:spring-cloud-starter-alibaba-nacos-discovery-2021.1.jar; 赠送原API文档:spring-cloud-starter-alibaba-nacos-discovery-2021.1-javadoc.jar; 赠送源代码:spring-cloud-starter-alibaba-nacos-...
赠送jar包:spring-cloud-starter-alibaba-nacos-config-2021.1.jar; 赠送原API文档:spring-cloud-starter-alibaba-nacos-config-2021.1-javadoc.jar; 赠送源代码:spring-cloud-starter-alibaba-nacos-config-...
开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-webmvc-4.3.6.RELEASE开发工具 spring-web...
赠送jar包:spring-cloud-alibaba-sentinel-gateway-2021.1.jar; 赠送原API文档:spring-cloud-alibaba-sentinel-gateway-2021.1-javadoc.jar; 赠送源代码:spring-cloud-alibaba-sentinel-gateway-2021.1-sources...
赠送jar包:spring-cloud-alibaba-sentinel-datasource-2021.1.jar; 赠送原API文档:spring-cloud-alibaba-sentinel-datasource-2021.1-javadoc.jar; 赠送源代码:spring-cloud-alibaba-sentinel-datasource-2021....
Spring5 框架 ---- Spring5的新功能 ---- 代码 Spring5 框架 ---- Spring5的新功能 ---- 代码 Spring5 框架 ---- Spring5的新功能 ---- 代码 Spring5 框架 ---- Spring5的新功能 ---- 代码 Spring5 框架 ---- Spring...
赠送jar包:spring-cloud-starter-alibaba-sentinel-2021.1.jar; 赠送原API文档:spring-cloud-starter-alibaba-sentinel-2021.1-javadoc.jar; 赠送源代码:spring-cloud-starter-alibaba-sentinel-2021.1-sources...
赠送jar包:spring-session-data-redis-2.0.4.RELEASE.jar; 赠送原API文档:spring-session-data-redis-2.0.4.RELEASE-javadoc.jar; 赠送源代码:spring-session-data-redis-2.0.4.RELEASE-sources.jar; 赠送...
赠送jar包:spring-boot-actuator-autoconfigure-2.3.12.RELEASE.jar; 赠送原API文档:spring-boot-actuator-autoconfigure-2.3.12.RELEASE-javadoc.jar; 赠送源代码:spring-boot-actuator-autoconfigure-2.3.12....
赠送jar包:spring-security-crypto-5.5.2.jar; 赠送原API文档:spring-security-crypto-5.5.2-javadoc.jar; 赠送源代码:spring-security-crypto-5.5.2-sources.jar; 赠送Maven依赖信息文件:spring-security-...
spring-ai-core 0.8.1,解决大家使用2023.0.1.0 版本 Spring Cloud Alibaba 依赖,代码依赖下载报错问题, <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies <version>...
Spring5 框架 ---- AOP ---- 代码 Spring5 框架 ---- AOP ---- 代码 Spring5 框架 ---- AOP ---- 代码 Spring5 框架 ---- AOP ---- 代码 Spring5 框架 ---- AOP ---- 代码 Spring5 框架 ---- AOP ---- 代码 Spring5 ...
标签 "spring-boot starter-parent-1" 指出了这是关于Spring Boot的starter parent,可能是指一系列版本中的第一个。 在压缩包的文件名称列表中,有两个文件: 1. `spring-boot-starter-parent-1.5.13.RELEASE.pom....
黑马程序员-SpringCloud-学习笔记-03-Eureka注册中心
**SpringDM笔记7-开发SpringDM Bundle** SpringDM(Spring Dynamic Modules)是Spring框架的一个扩展,专门用于OSGi(Open Service Gateway Initiative)环境中的应用程序开发。OSGi是一种Java模块化系统,它允许...
在这个问题中,我们遇到了两个关键的jar包:`spring-cglib-repack-3.2.0.jar`和`spring-objenesis-repack-2.1.jar`。这两个jar包对于理解Spring框架的工作原理以及它们在实际应用中的作用至关重要。 首先,`spring-...
赠送jar包:spring-boot-configuration-processor-2.5.6.jar; 赠送原API文档:spring-boot-configuration-processor-2.5.6-javadoc.jar; 赠送源代码:spring-boot-configuration-processor-2.5.6-sources.jar; ...
Spring5 框架 ---- IOC容器 ---- 代码 Spring5 框架 ---- IOC容器 ---- 代码 Spring5 框架 ---- IOC容器 ---- 代码 Spring5 框架 ---- IOC容器 ---- 代码 Spring5 框架 ---- IOC容器 ---- 代码 Spring5 框架 ---- ...
spring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jar
Spring5 框架 ---- 事务操作 ---- 代码 Spring5 框架 ---- 事务操作 ---- 代码 Spring5 框架 ---- 事务操作 ---- 代码 Spring5 框架 ---- 事务操作 ---- 代码 Spring5 框架 ---- 事务操作 ---- 代码 Spring5 框架 --...