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

 

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