SpringBoot讀取.yml配置文件最常見的兩種方式-源碼及其在nacos的應用

三、第二種方式(推薦)
這種方式是小編比較推薦的,雖然看似比​​@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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章