Spring源码解析(一):环境搭建

Spring源码系列文章

Spring源码解析(一):环境搭建


目录

  • 一、Spring源码基础组件
    • 1、bean定义接口体系
    • 2、bean工厂接口体系
    • 3、ApplicationContext上下文体系
  • 二、测试环境准备

一、Spring源码基础组件

  • 阅读源码时候,接口与类过多,可以对照这里查看对应的关系

1、bean定义接口体系

在这里插入图片描述

2、bean工厂接口体系

在这里插入图片描述

3、ApplicationContext上下文体系

在这里插入图片描述

二、测试环境准备

spring5.3.x源码路径下载:

https://gitee.com/xuchang614/spring-framework.git

在这里插入图片描述

gradle对应版本为7.5.1:

https://services.gradle.org/distributions/gradle-7.5.1-bin.zip

在这里插入图片描述

配置类:

@ComponentScan("com.xc")
@Configuration
public class Config {@Bean()public Book book(){return new Book();}
}

启动类:

public class Client {public static void main(String[] args) {//创建注解容器,入参为配置类AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(Config.class);//获取某个beanBook book = context.getBean(Book.class);System.out.println(book);//关闭容器context.close();}
}

源码目录展示及案例demo:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/8600.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Could not load the Qt platform plugin “xcb“

qt.core.plugin.loader: QLibraryPrivate::loadPlugin failed on “/home/ly/Qt/6.5.1/gcc_64/plugins/platforms/libqxcb.so” : “Cannot load library /home/ly/Qt/6.5.1/gcc_64/plugins/platforms/libqxcb.so: (libxcb-cursor.so.0: cannot open shared object file: No su…

了解Java可见性的本质

作者:早恒 前一段时间重温了伪共享(false sharing)问题,了解到深处有几个问题一直想不明白,加上开发过程中遇到volatile时总觉得理解不够透彻,借着这次脑子里这几个问题,探究下Java可见性的本质…

基于springboot+Redis的前后端分离项目(二)-【黑马点评】

🎁🎁资源文件分享 链接:https://pan.baidu.com/s/1189u6u4icQYHg_9_7ovWmA?pwdeh11 提取码:eh11 商户查询缓存,缓存更新策略,缓存穿透 商户查询缓存a.什么是缓存1.为什么要使用缓存2.如何使用缓存 b.添加商…

WideNet:让网络更宽而不是更深

这是新加坡国立大学在2022 aaai发布的一篇论文。WideNet是一种参数有效的框架,它的方向是更宽而不是更深。通过混合专家(MoE)代替前馈网络(FFN),使模型沿宽度缩放。使用单独LN用于转换各种语义表示,而不是共享权重。 混合专家(MoEs) 条件计…

【技巧】快速提取PowerPoint文件的图片

如果你看到PPT里的图片或背景素材比较好看,想要保存下来,你会怎么做呢? 可能很多人首先想到的就是选择图片后另存下来,或者使用截图保存,这也是一种方法,但如果图片很多的话,就十分繁琐和费时间…

【TCP/IP】利用I/O复用技术实现并发服务器 - epoll

目录 select的缺陷 epoll函数 epoll_create epoll_ctl epoll_wait 基于epoll的回声服务器实现 select的缺陷 在之前,我们使用了select函数完成了对回声服务器端I/O的复用,但是从代码上依然存有缺陷,主要集中在: 每次调用se…

微服务_Nacos

简介 Nacos(全称为“动态服务发现、配置和服务管理平台”)是阿里巴巴开源的一款云原生服务发现和配置管理平台,支持多种语言。它提供了服务发现、配置管理、服务治理和流量管理等功能,使得微服务系统的构建和管理更加便捷。Nacos…

前端食堂技术周刊第 89 期:ES 2023、MDN Playground、TS 5.2 Beta、逆向分析 GitHub Copilot

美味值:🌟🌟🌟🌟🌟 口味:糯米糍荔枝 食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly 大家好,我是童欧巴。欢迎来到前端食堂技术周刊,我们先来看…

多元分类预测 | Matlab基于灰狼优化深度置信网络(GWO-DBN)的分类预测,多特征输入模型,GWO-DBN分类预测

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元分类预测 | Matlab基于灰狼优化深度置信网络(GWO-DBN)的分类预测,多特征输入模型,GWO-DBN分类预测 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab,程序可…

apple pencil值不值得购买?ipad可以用的手写笔推荐

现在市面的电容笔品牌鱼龙混杂,我们很在选购中很容易就踩坑,例如买到一些书写会频繁出现断触的,或者防误触功能会失灵。所以我们在选购中务必要擦亮双眼。而对于一些将ipad作为一种学习工具的人而言,电容笔已经是iPad中不可或缺的…

0124 计算机网络体系结构

目录 1.计算机网络体系结构 1.1计算机网络概述 计算机网络的组成 计算机网络的功能 计算机网络的分类 计算机网络的性能指标 1.1部分习题 1.2计算机网络体系结构与参考模型 计算机网络分层结构 计算机网络协议、接口与服务 ISO/OSI参考模型和TCP/IP模型 OSI参考模型…

UE5.1.1 C++从0开始(17.GAS游戏能力系统)

教程的链接:https://www.bilibili.com/video/BV1nU4y1X7iQ 教程内的老师没用GAS的插件,而是自己写了一个。这一篇文章只是开头,还有很多的内容没有往里面写。 新增了一个object类,新增了一个使用这个类的组件。然后把这个组件用…