SpringBoot+Vue3-学习笔记

news/2025/2/22 5:53:16

1、SpringBoot特性

①起步依赖,所有需要的依赖全部配置在一起
②自动配置:遵循约定大约配置的原则,在boot程序启动后,一些bean对象会自动注入到ioc容器,不需要手动声明,简化开发
③内嵌的Tomcat、Jetty(无需部署WAR文件)、外部化配置、不需要XML配置(properties/yml)

2、SpringBoot 开发一个web应用

需求:使用 SpringBoot 开发一个web应用,浏览器发起请求 /ello后,给浏览器返回字符串“helo world ~"
不使用SpringBoot:配置依赖、配置servlet、配置beans扫描、写Controller
使用SringBoot:引入spring-boot-stater-web、写Controller

3、其他使用

3.1读取配置信息

值前边必须有空格,作为分隔符
使用空格作为缩进表示层级关系,相同的层级左侧对齐
@Value(“${键名}”)
@ConfigurationProperties(prefix=“前缀”)

3.2 启动类注解说明

@SpringBootApplication 已包含 @SpringBootConfiguration@EnableAutoConfiguratior @ComponentScan

3.3 外部类注册

如果要注册的bean对象来自于第三方(不是自定义的),是无法用 @Component 及衍生注解声明bean的
@Bean
@lmport
◆ 导入 配置类
◆ 导入 ImportSelector 接实现类
@Import(Xxx.class)
@springBootApplication
@Import(CommonConfig.class)
◆ @EnableXxxx注解,封装@Import注解

3.4 注册条件

@Conditional0nProperty 配置文件中存在对应的属性,才声明该bean
@ConditionalOnMissingBean 当不存在当前类型的bean时,才声明该bean
@ConditionalOnClass 当前环境存在指定的这个类时,才声明该bean

3.5 SpringBoot自动配置原理

遵循约定大约配置的原则,在boot程序启动后,起步依赖中的一些bean对象会自动注入到ioc容器
①在主启动类上添加了SpringBootApplication注解这个注解组合了
EnableAutoConfiguration注交
②EnableAutoConfiguration注解又组合了Import注解,导入了AutoConfigurationlmportSelector类
③实现selectImports方法,这个方法经过层层调用,最终会读取META-INF 目录下的 后缀名 为imorts的文件,当然了,boot2.7以前的版本,读取的是spring.factories文件。
④读取到全类名了之后,会解析注册条件,也就是@Conditional及其衍生注解,把满足注册条件的Bean对象自动注入到IOC容器中
在这里插入图片描述


http://www.niftyadmin.cn/n/5861699.html

相关文章

Apache Spark 的主要特点

Apache Spark 是一个大数据处理框架,提供了快速、通用的数据处理引擎,支持在大规模数据集上进行高效的并行处理。它通过基于内存的计算以及优化的调度来加速数据处理任务,比传统的基于磁盘的数据处理框架(如Hadoop)要快…

排查JVM的一些命令

查看JVM相关信息的方法 环境&#xff1a; Win10, jdk17 查看端口的Pid netstat -ano | findstr <端口号>列出当前运行的JVM进程 ## 用于输出JVM中运行的进程状态信息。通过jps&#xff0c;可以快速获取Java进程的PID&#xff08;进程标识符&#xff09;&#xff0c; …

策略模式 (Strategy)详解

一、什么是策略模式&#xff1f; 定义&#xff1a; 策略模式是一种行为型设计模式。 它定义了一系列算法&#xff0c;将每个算法封装起来&#xff0c;并使它们可以相互替换。核心思想&#xff1a; 将算法的定义与使用分离。 客户端代码不直接调用具体的算法&#xff0c;而是通…

Vue Axios

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 使用 - Axios 目录 Axios 请求方法 功能 安装 使用CDN 引入axios 使用axios 赋值 总结 Axios Axios&#xff0c;基于 Promise 的 HTTP 客户端&#xff0c;可以工作于浏览器中&#xff0c;也可以在 node.js 中使用…

微信小程序——访问服务器媒体文件的实现步骤

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;趣享先生的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏&…

使用Trae AI IDE,轻松实现交友聊天功能

目录 前言 开发者的日常痛点 1、开发效率瓶颈 2、AI在开发中的潜力 3、AI IDE和插件的区别 初识Trae&#xff1a;一个开发者的意外发现 1、关于Trae 2、Trae的核心功能 3、下载安装Trae指南 1.选择主题与语言 2.导入现有 IDE 配置&#xff08;可选&#xff09; 3.安…

ABC 391

目录 C. Make it Simple D. Swap to Gather E. GCD of Subset C. Make it Simple 看当前输入的两个点作为一对是否被标记过&#xff0c;用 set 判重就可以了 #include<bits/stdc.h> #define int long long using namespace std; const int N 1e5 5, INF 1e18;int …

人工智能任务23-天文领域的超亮超新星能源机制结合深度神经网络的研究方向

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能任务23-天文领域的超亮超新星能源机制结合深度神经网络的研究方向。 文章目录 一、研究背景阐述超亮超新星的定义与发现历程超亮超新星能源机制的主要理论模型1. 56Ni衰变模型2. 超新星抛射物与致密星周介…