SpringBoot核心
1.1 什么是SpringBoot
- Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。
1.2 SpringBoot四个主要特性
1、SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的Maven或Gradle构建中;
2、自动配置:SpringBoot的自动配置特性利用了Spring4对条件化配置的支持,合理地推测应用所需的bean并自动化配置他们;
3、命令行接口:(Command-line-interface, CLI):SpringBoot的CLI发挥了Groovy编程语言的优势,并结合自动配置进一步简化Spring应用的开发;
4、Actuatir:它为SpringBoot应用的所有特性构建一个小型的应用程序。但首先,我们快速了解每项特性,更好的体验他们如何简化Spring编程模型。
2.1 SpringBoot配置文件
- 配置文件名称:application。 配置文件的名字必须是这个,才会被SpringBoot识别。否则SpringBoot只会认为这是一个普通的文件。
配置文件的种类:
- application.properties:其中存储的格式是:k=v格式
- application.yml :其中存储数据的格式是:k: v(注意::和v之间存在一个空格,至少存在一个空格)
注意:以上两种格式的配置文件的v值都不需要加引号,在两种配置文件中,注释都是#。
yml是一种yaml格式的配置文件,主要采用一定的空格、换行等格式排版进行配置。yaml是一种直观的能够被计算机识别的数据序列化格式,容易被人类阅读,yaml类似于xml,但是语法比xml简洁的多,值与前面的冒号配置项必须要有一个空格,yml也可以使用 yaml 后缀。
- 注意:当两种格式同时存在的时候,在SpringBoot2.4开始,使用的是yml配置文件。修改配置名称都为application。推荐使用yml格式的配置文件。程序启动的时候都是默认读取的:application.properties|yml文件。
配置文件格式展示:
- application.properties格式
# properties文件中的注释是:# # 更改项目的端口号 server.port=8081 # 设置该项目的上下文的根路径。contextpath server.servlet.context-path=/myBoot 复制代码
- application.yml格式
# yml格式的配置文件 server: port: 8081 servlet: context-path: /myBoot 复制代码
解释:yml文件是按照层级进行书写的。从以上可以看出 port和servlet是处于同一级。是整个yml文档的第二级。而context-path是处于servlet下面的一级。处于整个文档的第三级。依次类推。 在属性与值之间必须存在一个或者多个空格
2.2 多环境配置
- 在实际开发中,我们的项目会经历很多的阶段(开发 -> 测试 ->上线),每个阶段的配置都会有所不同。例如:端口、上下文根、数据库等等。那么这个时候为了方便在不同的环境之间切换,SpringBoot提供了多
环境配置。具体步骤如下:
- 为每一个环境创建一个配置文件,命名必须以application-环境标识.properties|yml
- 这些配置文件都在 resources文件夹下。
- 配置开发时的配置文件
# 开发环境的配置文件 server: port: 8081 servlet: context-path: /myDev 复制代码
- 配置测试时的配置文件
# 测试使用的配置文件 server: port: 8082 servlet: context-path: /myTest 复制代码
- 配置上线时的配置文件
# 项目的上线使用的配置文件 server: port: 8084 servlet: context-path: /myOnine 复制代码
2.因为SpringBoot启动的时候默认读取的是:application.properties|yml文件。此时我们想让这个SpringBoot启动的时候读取开发时的 application-dev.yml 文件。此时需要在 application.properties文件中使用配置来告诉SpringBoot启动的时候使用哪个配置文件。
- 在 application.properties|yml配置文件中配置激活哪个配置文件。
# 激活使用哪个配置文件。这个属性等于的是:多个配置文件的环境标识 # 此时启动的就是: application-dev.yml spring.profiles.active=dev