当前位置: 首页 > article >正文

SpringBoot第一节

Spring Boot

Spring Boot 概述

  • 快速构建Spring的方式,是Spring的顶级项目之一

    Spring的缺点

  • 配置繁琐

  • 依赖繁琐

Spring Boot功能

自动配置

自动配置是一个运行时(应运程序启动时)的过程,考虑了众多因素,才决定Spring配置该用哪个,不该用哪个。过程由SpringBoot自动完成。

起步依赖

本质上是一个Maven项目对象模型,定义了对其他库的传递依赖,加在一起支持某项功能。

简单来说就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

辅助功能

提供了一些大型项目中常见的非功能性特性,如:嵌入式服务器、安全、指标、健康监测、外部配置等。

Spring Boot 并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式

Spring Boot快速入门

案例:需求

  • 搭建Spring Boot工程,定义HelloController.hello()方法,返回"Hello SpringBoot!".

案例:实现步骤

①创建Maven项目

②导入SpringBoot起步依赖

③定义Controller

④编写引导类

⑤启动测试

小结

  • SpringBoot在创建项目时,使用jar的打包方式。
  • SpringBoot的引导类,是项目入口,运行main方法就可以启动项目。
  • 使用SpringBoot和Spring构建的项目,业务代码编写方式完全一样。

SpringBoot 起步依赖原理分析

  • 在Spring-Boot-starter-parent中定义了各种技术的版本信息,组合了一套最优搭配的技术版本
  • 在各种的atart中,定义了完成该功能需要的坐标合集,其中大部分版本信息来自于父工程
  • 我们的工程继承parent,引入starter后,通过依赖传递,就可以简单方便获得需要的jar包,并且不会存在版本冲突等问题。

SpringBoot配置

配置文件分类

SpringBoot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就可以使用application.properties或者application.yml(application.yaml)进行配置。

  • properties:
server.port=8080
  • yml:
sever:
  port: 8080
小结
  • SpringBoot提供了2种配置文件类型:properteis和yml/yaml
  • 默认配置文件名称:application
  • 在同一级目录下优先级为:properties>yml>yaml

yaml

yaml是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被支持yaml库的不同的编程语言程序导入。

yaml文件是以数据为核心的,比传统的xml方式更加简洁

yaml文件的扩展名可以使用.yml或者.yaml。

  • properties:
sever.port=8080
sever.address=127.0.0.1
  • xml:
<sever>
    <port>8080</port>
	<address>127.0.0.1</address>
</server>
  • yml:
server:
	port: 8080
	address: 127.0.0.1

简洁,以数据为核心

基本语法
  • 大小写敏感
  • 数据值前边必须有空格,作为分隔符
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格键(各系统Tab对应的空格数目可能不同,导致层次混乱)
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • #表示注释,从这个字符一直到行尾,都会被解析器忽略。
server:
	port: 8080
    address: 127.0.0.1
        
name:abc
数据格式
  • 对象(map):键值对的集合
person:
	name: zhangsan
# 行内写法
person: {name: zhangsan}
  • 数组:一组按次序排列的值
address:
	- beijing
    - shanghai
#行内写法
address: [beijing,shanghai]
  • 纯量:单个的、不可再分的值
msg1: 'hello \n world'  #单引忽略转义字符
msg2: "hello \n world" #双引识别转义字符
参数引用
name: lisi
    
person:
  name: ${name} #引用上面定义的name的值
小结
配置文件类型
  • properties:和以前一样
  • yml/yaml:注意空格
yaml:简洁,以数据为核心
  • 基本语法
    • 大小写敏感
    • 数据值前边必须有空格作为分隔符
    • 使用空格缩进表示层级关系,相同缩进表示同一级
  • 数据格式
    • 对象
    • 数组:使用-表示数组每个元素
    • 纯量
  • 参数引用
    • ${key}

http://www.kler.cn/a/613829.html

相关文章:

  • 当编程语言有了人格
  • HCIP(TCP)(2)
  • 「HTML5+Canvas实战」星际空战游戏开发 - 纯前端实现 源码即开即用【附演示视频】
  • 2025 年中国家电零售与创新趋势解析:以旧换新国补激活需求,AI 技术渗透至研发、供应链、营销
  • 优秀的 React 入门开源项目推荐
  • 蓝桥杯第 12 天 109 国赛第一题 分考场(干了一个小时的题)
  • CSS3学习教程,从入门到精通,CSS3 定位布局页面知识点及案例代码(18)
  • C++类与对象的第一个简单的实战练习-3.24笔记
  • 20250328易灵思FPGA的烧录器FT4232_DL的驱动安装
  • Citus源码(1)分布式表行为测试
  • 【Mac】npm error Error: EACCES: permission denied, mkdir‘/Users/...
  • 第十三届蓝桥杯国赛电子类单片机学习记录(客观题)
  • HCIP笔记整理
  • 2025年春招-Linux面经
  • 从零开始跑通3DGS教程:(一)数据(采集)
  • 群体智能优化算法-蜂鸟优化算法(Artificial Hummingbird Algorithm, AHA, 含Matlab源代码)
  • EF Core 乐观并发控制(并发令牌)
  • Vue学习笔记集--postcss-px-to-viewport
  • 性能比拼: Rust vs C++
  • 从泛读到精读:合合信息文档解析如何让大模型更懂复杂文档