文章目录
- 前言
- 一、application配置文件是什么?
- 二、使用步骤
- 1.添加配置数据
- 总结
前言
提示:这里可以添加本文要记录的大概内容:
Spring Boot的application配置文件
提示:以下是本篇文章正文内容,下面案例可供参考
一、application配置文件是什么?
application配置文件在Spring Boot中起着至关重要的作用,它为应用程序提供必要的配置信息。在Spring Boot启动时,会自动加载该文件,并根据其中的配置信息对应用程序进行相应的配置。
application配置文件主要有两种格式:application.properties和application.yml(或application.yaml)。尽管这两种格式的内容是一致的,但它们的语法和结构有所不同。
application.properties使用标准的键值对格式进行配置,而application.yml则使用YAML(YAML Ain’t Markup Language)语法,这种语法更易于人类阅读,尤其是在处理复杂的层次结构或数组时。
application配置文件的配置项非常广泛,包括但不限于数据库连接信息、日志配置、端口号等。这些配置项可以根据具体的应用需求进行自定义设置。
此外,application配置文件可以放在多个位置,包括外置的/config子目录里等。不同位置的配置文件具有不同的优先级,Spring Boot会按照优先级顺序加载这些配置文件,优先级高的配置会覆盖优先级低的配置。
如果需要修改已经打包成jar包的application配置文件,如application.yml,可以使用jar命令导出该文件,进行必要的修改后再重新打入jar包。
总的来说,application配置文件是Spring Boot应用程序不可或缺的一部分,它使得应用程序的配置变得更加灵活和易于管理。
二、使用步骤
1.添加配置数据
由于application.yml和application.properties两者作用一样,下面就使用yml文件进行演示
可以 自定义Spring Boot的服务器端口号:
server:port: 8099 #8099就是自定义端口号,注意前面要有个空格
定义基本类型
username: rootpassword: 123456port: 3306flag: truetime: 2024/04/09
定义自定义javaBean
user: #User类定义,或者{"name": “彭于晏”,"age": 18,"sex": "男"}name: 彭于晏age: 18sex: 男
定义set,list集合
course: #List,Set 在元素前加-- spring- java- c
定义一个集合存放JavaBean
userList: #List数组,用于存放User- name: 彭于晏age: 18sex: 男- name: 彭于晏age: 18sex: 男- name: 彭于晏age: 18sex: 男
map集合的定义
map: #Map定义,或者{"java": 100,"sql": 99,"vue":98}java: 100sql: 99vue: 98
2.读取自定义内容
上述内容组合在一起
server:port: 8099
db:username: rootpassword: 123456port: 3306flag: truetime: 2024/04/09course: #List,Set 在元素前加-- spring- java- cuser: #User类定义,或者{"name": “彭于晏”,"age": 18,"sex": "男"}name: 彭于晏age: 18sex: 男userList: #List数组,用于存放User- name: 彭于晏age: 18sex: 男- name: 彭于晏age: 18sex: 男- name: 彭于晏age: 18sex: 男map: #Map定义,或者{"java": 100,"sql": 99,"vue":98}java: 100sql: 99vue: 98
编写Javabean用于取值
@Data
@Configuration
@ConfigurationProperties("db") //由于yml文件中设置了一个前缀”db",所以在这里设置一下前缀,自动装配数据
public class AppConfig {String username;String password;int port;boolean flag;Date time;String[] course;User user;List<User> userList;Map map;
}
在测试类中写以下测试内容
@SpringBootTest
class SbYamlWebApplicationTests {@AutowiredAppConfig appConfig;@Testvoid contextLoads() {System.out.println();}}
在经过debug测试能够得到配置文件中的数据
在xxxApplication类中启动web项目,显示我们tomcat端口号为 8099,设置端口号也修改成功
注意:
application.yml和application.properties这俩文件可以同时存在,且properties的优先级比yml高,当两个文件中设置同一个信息时,会优先使用properties中的配置信息
如:在两文件中同时设置不同端口号
这是运行的tomcat端口号就是8999
在yml文件中还可以设置开发环境测试环境
spring:profiles:active: test # 激活开发环境#指定开发环境文档模块
---
spring:config:activate:on-profile: dev #指定当前模块为开发模块
server:port: 3000#测试模块配置信息
---
spring:config:activate:on-profile: test #测试文档 模块名server:port: 4000
我们只需修改active:
的值就能进行开发和测试环境之间的切换。
总结
在这里更推荐大家使用yml文件进行配置,写起来具有分层,看起更明显。