1. 程式人生 > >Spring boot學習筆記——配置檔案

Spring boot學習筆記——配置檔案

一、spring boot的配置檔案簡單介紹

1.首先搭建一個Spring boot工程

2.搭建好之後,如圖所示

spring boot的配置檔案支援兩種格式,寫法也不相同,首先先看application.properties檔案,如圖:

再看application.yml檔案的寫法,如圖所示:

 

這兩個檔案表達的內容是一致的,只是寫法上不同,注意yml檔案的寫法要求。如果兩個檔案都有,spring boot預設是取application.properties檔案,(測試:可以將連個配置檔案的值改成不同,看看類載入的時候取的是哪個檔案的值)

 

拓展:隨機數的取值,配置檔案中取隨機數,僅當該類屬性賦值的時候隨機產生,之後不會再改變。

${random.int(10,20)}之間的隨機數

${random.int(10)} 隨機10以內的

${random.value} 隨機字串

${random.int} 隨機int

${random.long} 隨機long

 

3.取配置檔案中自定義引數的值:

建立java類-test.java,程式碼如下

package com.example.demo;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class Test {
	
	@Value("${my.name}")
	private String name;
	@Value("${my.age}")
	private int age;
	@Value("${my.salary}")
	private double salary;
	
	@RequestMapping("/test")
	public String test() {
		return "name:"+name+"--age:"+age+"--salary:"+salary;
	}
}

利用註解,在類屬性名上加入@value,即可獲取到配置檔案中配置的值

第二種取值方法,直接給類加註解的寫法,程式碼如下:

@RestController
@ConfigurationProperties(prefix="my")
public class Test {
	
	private String name;
	private int age;
	private double salary;
	
	@RequestMapping("/test")
	public String test() {
		return "name:"+name+"--age:"+age+"--salary:"+salary;
	}

	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public double getSalary() {
		return salary;
	}
	public void setSalary(double salary) {
		this.salary = salary;
	}
	
}

注意:這種寫法必須有set方法,否則是取不到值的

4.啟動專案,訪問http://loaclhost:8088/test,可獲得如下效果: