三、第二種方式(推薦)
這種方式是小編比較推薦的,雖然看似比@Value麻煩不少,但是更加的規範,在配合nacos的時候也可以動態的修改,會立即生效,一會小編帶大家試一下哈!!爲什麼推薦這種方式呢,是因爲spring他們都是使用這種方式進行配置的,所以跟着官方走不會有錯的!!
1. 修改yml文件
我們剛剛修改了一下yml配置文件,讓類型更加豐富!!
school:
teacher: 王老師
studentList:
- 小明
-
2. 編寫讀取映射的類
import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.List; /** * @author wangzhenjun * @date 2022/8/17 9:04 */ // 要交給spring容器,不然獲取不到值 @Component // 配置讀取yml文件中前綴以 school開頭的配置可以全部讀取 @ConfigurationProperties(prefix = "school") // 要有get方法,不然無法獲取值 @Data public class School { // 名稱要與yml一致 private String teacher; private List<String> studentList; } ----------------------------------- ©著作權歸作者所有:來自51CTO博客作者掉髮的小王的原創作品,請聯繫作者獲取轉載授權,否則將追究法律責任 SpringBoot讀取.yml配置文件最常見的兩種方式-源碼及其在nacos的應用 https://blog.51cto.com/wangzhenjun/5605501
3. 在Controller進行測試
@RestController
@RequestMapping("/test")
@Slf4j
@RequiredArgsConstructor
public class TestController {
@Autowired
private School school;
@GetMapping("/testProperties")
public void testProperties(){
log.info("讀取yml的school對象:{}",school);
}
}
-----------------------------------
©著作權歸作者所有:來自51CTO博客作者掉髮的小王的原創作品,請聯繫作者獲取轉載授權,否則將追究法律責任
SpringBoot讀取.yml配置文件最常見的兩種方式-源碼及其在nacos的應用
https://blog.51cto.com/wangzhenjun/5605501