爆肝spring源码笔记

1.总览

首先学习spring源码 的大纲如下 图1.1为主要学习 内容其中 容器 + AOP占百分之六七十

然后学完sping源码 再学springmvc源码就简单很多

1.2中指出了springmvc中父子工厂的事务冲突问题 这个在springboot中由于引入了内置的

tomcat后解决 后面会讲 然后springboot的诞生原因主要是简化开发,springcloud就是服务于微服务开发

图1.3可以看出我们的工厂是列出bean容器根接口BeanFactory下的一些bean容器接口与类

各个bean容器接口的作用都不同

比如HierarchicalBeanFactory 进行父子容器的管理

比如ConfigurableBeanFactory 我们配置的单例还是prototype多例,还有啥类型转化器就是通过它

再比如AutowireCapableBeanFactory 很明显可以看出 我们使用autowire注入对象 就是通过它

还有ListableBeanFactory 我们判断bean工厂是否包含某beandefinition 通过什么bean name 或者bean type去获取某个bean 就是通过它

这里要强调的一点是 applicationcontext具备上面这几个接口的所有功能

然后提到的xmlbeanfactory 通过解析xml生成beandefinition存到jvm

相关推荐
q***46521 小时前
Spring中使用Async进行异步功能开发实战-以大文件上传为例
java·后端·spring
万物皆字节1 小时前
spring ai 初始化工具,代码链分析
spring
q***9942 小时前
Redis的Spring配置
数据库·redis·spring
q***49452 小时前
SpringGateway网关(Spring Gateway是Spring自己编写的,也是SpringCloud中的组件)
spring·spring cloud·gateway
mqiqe3 小时前
【Spring AI MCP】四、MCP 服务端
java·人工智能·spring
我是小妖怪,潇洒又自在3 小时前
springcloud alibaba搭建
后端·spring·spring cloud
L.EscaRC5 小时前
Spring IOC核心原理与运用
java·spring·ioc
在逃热干面5 小时前
(笔记)获取终端输出保存到文件
java·笔记·spring
海边夕阳20067 小时前
主流定时任务框架对比:Spring Task/Quartz/XXL-Job怎么选?
java·后端·spring·xxl-job·定时任务·job
帧栈7 小时前
开发避坑指南(72):HttpHeaders 的add()方法和set()方法有什么区别?
java·spring·http