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

相关推荐
过期动态4 小时前
Java开发中的@EnableWebMvc注解和WebMvcConfigurer接口
java·开发语言·spring boot·spring·tomcat·maven·idea
JavaGuide9 小时前
推荐一个基于 Spring Boot 4.0 + Java 21 + Spring AI 2.0 的大模型项目!
java·spring boot·spring
NE_STOP10 小时前
spring6-多种类型的注入方式
spring
小马爱打代码10 小时前
Spring Boot :使用 Spring Cache 注解方式集成 Redis
spring boot·redis·spring
有味道的男人10 小时前
1688获得商品类目调取商品榜单
java·前端·spring
树码小子11 小时前
SpringMCV(9)响应:返回静态页面 & 修改响应数据
spring·mvc
Remember_99311 小时前
Spring 事务深度解析:实现方式、隔离级别与传播机制全攻略
java·开发语言·数据库·后端·spring·leetcode·oracle
roman_日积跬步-终至千里11 小时前
【Java并发】用 JMM 与 Happens-Before 解决多线程可见性与有序性问题
java·开发语言·spring
独断万古他化12 小时前
【Spring 核心:AOP】基础到深入:思想、实现方式、切点表达式与自定义注解全梳理
java·spring·spring aop·aop·切面编程
树码小子13 小时前
SpringMVC(10)综合案例练习:计算器,登录
spring·mvc