springboot配置的两种形式
1、properties形式(=连接) application.properties
2、yaml/yml形式(. 连接,注意赋值之前要有一个空格,和缩进)application.yml/.yaml
Yet Another Markup Language(另一种标记语言) ==》 json子集
yml在极端情况下可以表示顺序,而properties则做不到(更推荐使用yml)
配置管理常用方式
-
配置文件(properties,yaml)
-
环境变量
1、idea配置中配置
-
外部配置文件
-
命令行参数
终端配置
运行jar:java -jar spring-boot-0.0.1-SNAPSHOT.jar
带环境变量运行jar:java -jar spring-boot-0.0.1-SNAPSHOT.jar --show_env=always
带环境变量运行jar:java -jar spring-boot-0.0.1-SNAPSHOT.jar --server.port=8082 (#改变端口号)
profile
不同环境不同配置
用连字符区分(—)
#所有环境公用的配置属性
---
#profile=x的专用属性,也就是某个环境下的专用熟悉
#开发环境
---
#profile=y的专用属性,也就是某个环境下的专用属性
#生产环境
yml中配置:
#所有环境公用的配置属性
server:
port: 8081
management:
endpoint:
health:
show-details: ${show_env} #环境变量配置
endpoints:
web:
exposure:
include: metrics,configprops,health
info:
app-name: Spring boot
author: Wendy
email: Wendy@email
---
#连字符
#profile=x的专用属性,也就是某个环境下的专用熟悉
#开发环境
spring:
profiles: dev
---
#profile=y的专用属性,也就是某个环境下的专用属性
#生产环境
spring:
profiles: prod
server:
tomcat:
max-threads: 300
max-connections: 1000
在idea中配置
在配置文件中配置:
#启动的配置设置
spring:
profiles:
active: dev
配置文件中和idea中同时配置的,若不一致,用idea启动则会以idea的配置为准,若以命令行启动则会以配置文件中的为准
在properties中则需要创建application.properties(代表公用的配置);application-dev.properties(表示dev环境下的配置),application-prod.properties(表示prod环境下的配置)