SpringBoot——引导类的简单介绍

news2024/10/5 16:24:35

简单介绍:

之前我们就说到过引导类,之不过当时就是简单的说了一下这个名字,让大家记住我们运行的程序的学名叫做引导类,但是我们并没有进入看过,介绍过它的作用,这次我们就来简单的介绍一下这个类的作用。

他是什么样的:

它的内容很简单,就是一个类调用了一个方法,那么这个类是什么类,这个方法又是干了什么呢?

先来思考一个简单的事情,我们的Spring Boot的作用是什么?不就是简化Spring的开发,那么也就是说它的本质还是一个Spring,既然是Spring,那么它得有一个容器来吧,这是Spring的一个特征吧,那么这个类的第一个作用就出来了,初始化容器,那么是不是呢?我们看这个方法的返回值就知道了:

返回了一个ConfigurableApplicationContext,前面不认识,但是后面ApplicationContext是不是就是那个容器对象啊,看着像,那么是不是真的有关系呢?点进去看看就知道了:

 

这个接口继承了ApplicationContext,那么就明白了,这就是一个初始化容器的过程,除了初始化容器,还有其他的作用吗?

还记得之前我们在做项目的时候,除了初始化容器,还得在配置文件里写一个东西叫做包扫描器啊, 现在是不是没写?那没写,是不是就我要注册Bean是不是就没法做了呢?

试一下:

我写一个controller,然后注册进去,如果能拿到,那不就说明注册进去了吗:

 

获取一下试试能不能拿到:

 

不是空,拿到对象了,那么我没写包扫描,也没写Bean标签,他是怎么知道我要注册Bean的呢?他是怎么扫描的注解呢? 

他用的就是它的类注解:@SpringBootApplication,我们点击去看一看:

 有一个@ComponentScan注解,这个是不是就是扫描包的注解啊,那么扫描那个包呢?扫描的就是引导类所在的包以及它下面的子包,如果遇到对应的注解,那么就将其注册到容器中,我们就可以获取到。

总结:

引导类的两个作用:1、创建一个Spring容器。2、扫描引导类所在的包以及它的子包,将带有注解类注册进容器。

内置服务器:

之前我们介绍了SpringBoot的三大优势,还有一个优势是辅助功能,我们现在能体验到的辅助功能就是内置服务器,其实它不止内置了一款服务器,内置了三款,只不过默认是Tomcat,还有另外两个是Jetty和undertow,有兴趣的可以去了解一下这两款服务器的特点,我们在之后Spring容器整合第三方技术的时候会介绍如何切换内置的服务器,以及如何对服务器进行配置

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[NLP] SentenceTransformers使用介绍

SentenceTransformers 是一个可以用于句子、文本和图像嵌入的Python库。 可以为 100 多种语言计算文本的嵌入并且可以轻松地将它们用于语义文本相似性、语义搜索和同义词挖掘等常见任务。 该框架基于 PyTorch 和 Transformers,并提供了大量针对各种任务的预训练模型…

STEP7-MicroWin SMART中修改变量注释的具体方法(绝对寻址+符号寻址)

STEP7-MicroWin SMART中修改变量注释的具体方法(绝对寻址+符号寻址) 如下图所示,我们可以在符号表中定义变量的符号名称以及注释信息, 使用时需注意以下事项: 1.在 STEP 7-Micro/WIN SMART 软件中,可以建立多个符号表,但不允许将相同的符号名多次用作全局符号赋值,在单…

1707_Python中的多成员处理

全部学习汇总: GreyZhang/python_basic: My learning notes about python. (github.com) 欢迎路过的YUAN类朋友们,希望我们能够相互交流共同成长。如有错误或者不足希望及时指点指出,不胜感激!以下是我的联系方式: E…

Kali-linux识别活跃的主机

尝试渗透测试之前,必须先识别在这个目标网络内活跃的主机。在一个目标网络内,最简单的方法将是执行ping命令。当然,它可能被一个主机拒绝,也可能被接收。本节将介绍使用Nmap工具识别活跃的主机。 网络映射器工具Nmap Nmap是一个…

JavaScript经典教程(七)-- JavaScript中级

197:in、预解析、变量提升、对象引用、Date对象 1、预解析 即,把var的变量在,作用域下,提前; (1)JS代码运行原理 预先解析,JS第一次解析代码叫预解析。 JS本身会解析两次代码&a…

vue非单文件组件

非单文件组件指的是:一个文件中包含了多个组件。 Vue 中使用组件的三大步骤:1. 创建组件、2. 注册组件、3. 使用组件。 组件使用流程【第一步:创建组件】 利用 Vue.extend() 方法创建组件: // 第一步:创建 frameHead 组件 cons…

前端015_标签模块_删除功能

标签模块_删除功能 1、需求分析2、EasyMock 添加模拟接口3、Api 调用接口4、测试1、需求分析 当点击删除按钮后, 弹出提示框。点击确定后,执行删除并刷新列表数据 确认消息弹框参考:https://element.eleme.cn/#/zh-CN/component/message-box#que-ren-xiao-xi 2、EasyMock …

【AUTOSAR】【以太网】TCPIP

目录 一、概述 二、约束和假设 三、依赖模块 3.1 EthIf 3.2 EthSM 3.3 SoAd 3.4 KeyM 3.5 CSM 四、功能说明 4.1 系统扩展性 4.2 IPv4 4.2.1 IPv4 4.2.2 ARP 4.2.3 Auto-IP 4.2.4 ICMP 4.3 IPv6 4.4 IPSec 4.5 基于IP的协议 4.5.1 本地地址表 4.5.2 UDP 4…

音视频八股文(12)-- ffmpeg 音频重采样

1重采样 1.1 什么是重采样 所谓的重采样,就是改变⾳频的采样率、sample format、声道数等参数,使之按照我们期望的参数输出。 1.2 为什么要重采样 为什么要重采样?当然是原有的⾳频参数不满⾜我们的需求,⽐如在FFmpeg解码⾳频…

【C++初阶】类和对象(四)

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C初阶 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【C初阶】…

(二)zookeeper实战——zookeeper集群搭建

前言 本节内容我们主要介绍一下如何在centos系统下搭建一套高可用的zookeeper集群,zookeeper是我们常用的中间键之一,例如使用zookeeper实现分布式锁、Hadoop集群高可用、kafka集群高可用等等。我们以以下三台服务器为例: zookeeper服务器 I…

R语言tidyverse教程:ggplot2绘图初步

文章目录 基本流程渲染美化坐标轴设置 R语言系列: 编程基础💎循环语句💎向量、矩阵和数组💎列表、数据帧排序函数💎apply系列函数tidyverse:readr💎tibble 基本流程 ggplot2有其独特的绘图语…

【算法题】LCP 74. 最强祝福力场

插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 坚持不懈,越努力越幸运,大家一起学习鸭~~~ 题目: 小扣在探索丛林的过程中&#xff0…

MPLS格式和802.1q帧格式

一.MPLS IETF开发的多协议标记交换(MPLS)把第2层的链路状态信息(带宽、延迟、利用率等)集成到第3层的协议数据单元中,从而简化和改进了第3层分组的交换过程 。理论上,MPLS支持任何第2层和第3层协议。MPLS包头的位置界…

web集群第一次作业

目录 一. 简述静态网页和动态网页的区别 二. 简述 Web1.0 和 Web2.0 的区别 三. 安装tomcat8,配置服务启动脚本,部署jpress应用。 一. 简述静态网页和动态网页的区别 1. 首先,两者的页面资源特征不同: 静态网页处理文件类型有…

【Linux】进程信号(完整版) --- 信号产生 信号保存 信号捕捉 可重入函数 volatile SIGCHLD信号等

🍎作者:阿润菜菜 📖专栏:Linux系统编程 文章目录 一、预备知识二、信号产生1. 通过终端按键产生信号1.1 signal()1.2 core dump标志位、核心存储文件 2.通过系统调用向进程发送信号3.由软件条件产生信号3.1 alarm函数和SIGALRM信号…

华为OD机试真题 Java 实现【知识图谱新词挖掘1】【2023Q1 100分】

一、题目描述 小华负责公司知识图谱产品,现在要通过新词挖掘完善知识图谱。 新词挖掘: 给出一个待挖掘文本内容字符串Content和一个词的字符串word,找到content中所有word的新词。 新词:使用词word的字符排列形成的字符串。 请帮小华实现新词…

【AI领域+餐饮】| 论ChatGPT在餐饮行业的应用展望

💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后…

二十五、SQL 数据分析实战(9个中等难度的SQL题目)

文章目录 题目1: App 使用频率分析题目2: App 下载情况统计题目3: 寻找活跃学习者题目4: 商品分类整理题目5: 商品销售分析题目6: 网约车司机收益统计题目7: 网站登录时间间隔统计题目8: 不同区域商品收入统计题目9: 信贷逾期情况统计 题目1: App 使用频率分析 现有一张用户使…

BM64-最小花费爬楼梯

题目 给定一个整数数组 cost,其中 cost[i] 是从楼梯第i个台阶向上爬需要支付的费用,下标从0开始。一旦你支付此费用,即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的…