欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot配置application.yml及根據application.yml選擇啟動配置的操作方法

 更新時間:2023年10月27日 11:42:13   作者:Miaow.Y.Hu  
Spring Boot中可以選擇applicant.properties 作為配置文件,也可以通過在application.yml中進行配置,讓Spring Boot根據你的選擇進行加載啟動配置文件,本文給大家介紹Spring Boot配置application.yml及根據application.yml選擇啟動配置的操作方法,感興趣的朋友一起看看吧

在Spring Boot 中可以選擇applicant.properties 作為配置文件,也可以通過在application.yml中進行配置,讓Spring Boot根據你的選擇進行加載啟動配置文件。

這種配置方式,我們通常在實際開發(fā)中經常使用,主要為了發(fā)布版本和以及開發(fā)環(huán)境,本地環(huán)境,測試環(huán)境等不同環(huán)境使用不同的配置文件,這樣就減少了我們經常去配置application.yml的相關具體配置,因為不同的配置文件里邊的ip地址或者數據庫的鏈接以及端口不同,干過開發(fā)的都知道,我們一般會將數據庫的訪問地址,賬號,密碼,Redis的訪問地址等均放到application.yml文件中。

開始,我們在Spring Boot中創(chuàng)建一個啟動類文件

@SpringBootApplication
public class Chapter12Application {
    public static void main(String[] args) {
        SpringApplication.run(Chapter12Application.class, args);
    }
    @RestController
    static class HelloController {
		//指定配置文件讀取name并獲得配置文件的值
        @Value("${name:}")
        private String name;
		//瀏覽器根據地址訪問得到相關name
        @RequestMapping("/")
        public String index() {
            return name;
        }
    }
}

創(chuàng)建一個application.yml文件存放到src/resources,目錄下:

# 默認激活dev配置,選擇啟動配置文件,實際上均采用active讀取
spring:
  profiles:
    active: "test"
---
# 指定的配置文件
spring:
  config:
    activate:
      on-profile: "dev"
# 讀取的name文件
name: dev.Miaow.Y.Hu.com
#啟動端口號配置
server:
  port: 7745
---
spring:
  config:
    activate:
      on-profile: "test"
name: test.Miaow.Y.Hu.com
server:
  port: 7745
---
spring:
  config:
    activate:
      on-profile: "prod"
server:
  port: 7745
name: prod.Miaow.Y.Hu.com

Spring Boot 2.4 以后的配置

好,有了上邊對application.yml的相關基礎,接下來我們在一個application.yml進行相關配置,然后根據相關配置啟動我們需要的配置文件,然后得到我們想要的name.

依舊是Spring Boot 的啟動文件

@SpringBootApplication
public class Chapter13Application {
    public static void main(String[] args) {
        SpringApplication.run(Chapter13Application.class, args);
    }
    @Slf4j
    @RestController
    static class HelloController {
        @Value("${db:}")
        private String db;
        @Value("${mq:}")
        private String mq;
        @RequestMapping("/")
        public String index() {
            log.info("db:" + db);
            log.info("mq:" + mq);
            return db + "===" + mq;
        }
    }
}

依舊是如此,我們可以在pom.xml先配置我們所需要的依賴:

<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

接下來我們還是將重點放到我們的application.yml配置文件上:

# 2.4之前的配置
#spring:
#  profiles:
#    active: "dev"
#
#---
#spring.profiles: "dev"
#spring.profiles.include: "dev-db,dev-mq"
#
#---
#spring.profiles: "dev-db"
#
#db: dev-db.Miaow.Y.Hu.com
#
#---
#spring.profiles: "dev-mq"
#
#mq: dev-mq.Miaow.Y.Hu.com
#
#---
#2.4之后的配置
# 默認激活dev配置
spring:
  profiles:
  # 更改指定的啟動配置文件
    active: "dev" 
    group:
    # 分組,只要你確定定義的別名滿足條件,那么就適配
      "dev": "dev-db,dev-mq"
      "prod": "prod-db,prod-mq"
---
spring:
  config:
    activate:
      on-profile: "dev-db"
db: dev-db.Miaow.Y.Hu.com
---
spring:
  config:
    activate:
      on-profile: "dev-mq"
mq: dev-mq.Miaow.Y.Hu.com
---
spring:
  config:
    activate:
      on-profile: "prod-db"
db: prod-db.Miaow.Y.Hu.com
---
spring:
  config:
    activate:
      on-profile: "prod-mq"
mq: prod-mq.Miaow.Y.Hu.com

由于我并未配置具體的端口號,故而系統(tǒng)將采用默認的端口號8080啟動,其中我們通過端口號訪問得到,因為我們默認采用dev進行啟動,故而我們在瀏覽器上得到的就是dev開頭的數據。

這是在瀏覽器打印的結果,在控制臺我們也可以看到相關打印的結果:

同理,我們也可以利用application.yml的特性,來完成我們所需要的功能。
例如:

@RestController
public class HelloController {
    @Value("${com.Miaow.Y.Hu.from}")
    public String from;
    @RequestMapping("/hello")
    public String index() {
        return "Hello World";
    }
    @RequestMapping("/demo")
    public String didi(){
        System.out.println(from);
        return from;
    }
}

application.properties

com.Miaow.Y.Hu.from=miaow

到此這篇關于Spring Boot配置 application.yml,根據application.yml選擇啟動配置的文章就介紹到這了,更多相關Spring Boot配置 application.yml內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論