爆肝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

相关推荐
麦兜*1 天前
Redis内存消耗异常飙升?深入排查与Big Key/Hot Key的根治方案
jvm·数据库·spring boot·redis·spring·缓存
小七mod1 天前
【Spring】Spring Boot自动配置的案例
java·spring boot·spring·自动配置·源码·ioc·aop
java干货1 天前
Spring Boot 为什么“抛弃”了 spring.factories?
spring boot·python·spring
sg_knight1 天前
RabbitMQ 中的预取值(prefetch)详解:如何真正提升消费端性能?
java·spring boot·spring·spring cloud·消息队列·rabbitmq·预取值
百***61871 天前
Spring的构造注入
android·java·spring
zl9798991 天前
SpringCloud-LoadBalancer负载均衡服务调用
spring·spring cloud·负载均衡
小七mod1 天前
【微服务】微服务架构演进
分布式·spring·spring cloud·微服务·云原生·架构·单体架构
q***11651 天前
SpringBoot创建动态定时任务的几种方式
java·spring boot·spring
小兵张健1 天前
Java + Spring 到 Python + FastAPI (三)
python·spring·fastapi
朝新_1 天前
Spring事务和事务传播机制
数据库·后端·sql·spring·javaee