码迷,mamicode.com
首页 > 编程语言 > 详细

springboot学习总结(四)外部配置

时间:2019-04-15 23:06:59      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:auto   control   com   应该   方式   rop   jar包   tostring   属性   

Springboot允许使用properties文件、yaml文件或者命令行参数作为外部配置

(一)常规属性配置(基于properties、yaml文件)

技术图片

请求http://localhost:8090/yml-value-test,返回结果如下:

技术图片

(二)命令行参数配置

当Springboot是基于jar包运行时,可以使用命令行来修改yaml或者properties里面的配置文件

一般按上面的逻辑,请求http://localhost:8090/yml-value-test。返回结果应该是vincent。

不过我们可以通过这样的命令来修改配置的内容

技术图片

 

 再次请求,返回结果如下:

技术图片

这种方式特别适用于那种小项目,在各种不同环境下需要修改配置内容的情况。

(三)类型安全的配置(基于properties)

使用@Value注入每个配置在实际项目中会显得格外麻烦,所以,springboot还提供了基于类型安全的配置方式,通过@ConfigurationProperties将properties或者yaml文件中的配置和一个Bean及其属性关联,从而实现类型安全的配置

yaml文件代码:

people:
  name: vincent
  age: 10
PeopleVo类代码:
//@Component在这很重要,不把PeopleVo放入spring管理的生命周期内是无法实现类型安全配置的
@Component
@Data
@ConfigurationProperties(prefix = "people")
public class PeopleVo {

    private String name;

    private Integer age;
}

 controller中测试

    @Autowired
    PeopleVo peopleVo;

    @RequestMapping("/properties-test")
    public String propertiesTest() {
        return peopleVo.toString();
    }

  返回结果:

技术图片

 

springboot学习总结(四)外部配置

标签:auto   control   com   应该   方式   rop   jar包   tostring   属性   

原文地址:https://www.cnblogs.com/vincentren/p/10713587.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!