Spring Boot 使用笔记(如何将配置写进属性文件)

Spring Boot 使用笔记(如何将配置写进属性文件)

使用外部属性文件

外部属性文件有两种,放置在 maven 或者 gradle 项目约定好的 resources 文件夹下:

(1)application.yml(注意格式,yml 对格式要求非常严格)

样例文件:

reading:
  user:
    gold:
      default: 50
      name: 金币

在 Java 类中如何使用:
在 Spring Boot 项目中,只要是类 @Component 注解使用的类,直接对成员变量使用 @Value 注解就可以了。
例子:

Value("${reading.user.gold.default}")
private String defalut;
@Value("${reading.user.gold.name}")
private String name;

说明:目前测试使用 @ConfigurationProperties(prefix="reading.user.gold") 的方式无效。
扩展:

@Autowired
private Environment env;

可以使用 Environment 提供的 env.getProperty("mysql.lyresource.url") 方法提取配置文件的信息。

(2)application.properties

Spring Boot 默认的配置文件位于根路径下,叫 application.properties,即我们不用声明配置文件的位置和名字,就可以被引入到类中来,例如:
我们在类路径下新建一个文件,名为 application.properties,内容是
host=127.0.0.1
port=8080
在我们须要使用 host 的地方,比如成员变量,方法名参数上使用 @Value 注解,就可以注入配置文件的值了。

@Value("${host}")
private String host;

@RequestMapping("/showPerson")
public Person showPerson(@Value("${port}") String port) {
    return new Person("李威" + host + ":" + port, "121088825@qq.com");
}

如果我们非要起另外的名字,应该怎么写呢?很简单,只要在类上写注解 @PropertySource("classpath:jdbc.properties") 就可以了。

参考资料:
(1)官方文档的翻译
https://qbgbook.gitbooks.io/spring-boot-reference-guide-zh/content/IX.%20%E2%80%98How-to%E2%80%99%20guides/63.4.%20Use%20YAML%20for%20external%20properties.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值