网站首页 > 技术教程 正文
Spring Boot一切的神奇能力都来自于Spring框架,想学好Spring Boot必须从Spring框架的基础学起;同样学习好Spring框架,我们从IoC容器学起。
1 IoC容器
Spring的核心是IoC(控制反转Inversion of Control)容器,它负责容器内的普通Java对象的管理以及对象之间关系的绑定(依赖注入Dependency Injection),容器中被管理的对象称为Bean。
Spring又是如何知道要怎样管理你的Bean呢,通过:元数据 + POJO
- POJO:简单的Java对象
- 元数据:描述你的POJO如何管理的数据
Spring通过读取你的元数据知道你将如何管理你的POJO,然后按照你的要求对POJO即Bean进行管理。刚开始Spring的元数据表现主要是XML配置,而现在主要的元数据的配置都是通过注解配置和Java配置。
Spring的IoC容器即ApplicationContext,它拥有一个父接口BeanFactory,用来提供管理配置任意对象的基础功能,而ApplicationContext提供了更多的企业级功能且包含父接口的所有功能。我们只要新建一个ApplicationContext的实现就拥有了一个Spring的IoC容器。
ApplicationContext context =
new ClassPathXmlApplicationContext("context.xml");
Spring Boot为我们在不同的环境下自动创建正确的IoC容器:
- AnnotationConfigApplicationContext:默认创建的IoC容器;
- AnnotationConfigServletWebServerApplicationContext:Web应用下创建的IoC容器;
- AnnotationConfigReactiveWebServerApplicationContext:响应式Web应用创建的IoC容器。
我们通过建立一个简单的Spring Boot应用来直接学习Spring基础,它会给我们自动创建一个AnnotationConfigApplicationContext的IoC容器。
访问:https://start.spring.io/
参考上图生成需要的项目,目前我们不需要更多的以来,我们将通过这个工程系统的学习Spring框架基础知识。让我们开始吧。
猜你喜欢
- 2024-10-19 Java 项目编译提示 javax.xml.bind.annotation does not exist 错误
- 2024-10-19 Android annotation包下常用的注解
- 2024-10-19 SpringMVC疑难一:mvc:annotation-dr
- 2024-10-19 Spring 中 AnnotationConfigUtils
- 2024-10-19 spring mvc 配置失效了?(springmvc的配置)
- 2024-10-19 为什么都爱着江南?黛瓦白墙,烟雨朦胧,是文人魂牵梦绕的故乡
- 2024-10-19 Spring框架系列之构造方法底层剖析01
- 2024-10-19 基于.NET6包含DDD,ES,CQRS等概念的开源
- 2024-10-19 spring 中 AnnotationUtils 的常用方法
- 2024-10-19 Intellij IDEA安装并使用阿里p3c代码规约插件
你 发表评论:
欢迎- 最近发表
-
- Win11学院:如何在Windows 11上使用WSL安装Ubuntu
- linux移植(Linux移植freemodbus)
- 独家解读:Win10预览版9879为何无法识别硬盘
- 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)
- Docker镜像瘦身(docker 减小镜像大小)
- 在linux上安装ollama(linux安装locale)
- 渗透测试系统Kali推出Docker镜像(kali linux渗透测试技术详解pdf)
- Linux环境中部署Harbor私有镜像仓库
- linux之间传文件命令之Rsync傻瓜式教程
- 解决ollama在linux中安装或升级时,通过国内镜像缩短安装时长
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)