目录
读取配置信息
很多时候我们需要将一些常用的配置信息比如阿里云 oss、发送短信、微信认证的相关配置信息等等放到配置文件中。
下面我们来看一下 Spring 为我们提供了哪些方式帮助我们从配置文件中读取这些配置信息。
我们的数据源application.yml内容如下::
shipingsai2024: 2月21日,在韩国釜山进行的2024年国际乒联釜山世界乒乓球团体锦标赛女子团体八分之一决赛中,中国队3比0战胜泰国队,晋级八强。
my-profile:
name: 无问
email: widnpamhx@163.com
library:
location: 中国加油
books:
- name: 天才基本法
description: 二十二岁的林朝夕在父亲确诊阿尔茨海默病这天,得知自己暗恋多年的校园男神裴之即将出国深造的消息——对方考取的学校,恰是父亲当年为她放弃的那所。
- name: 时间的秩序
description: 为什么我们记得过去,而非未来?时间“流逝”意味着什么?是我们存在于时间之内,还是时间存在于我们之中?卡洛·罗韦利用诗意的文字,邀请我们思考这一亘古难题——时间的本质。
- name: 了不起的我
description: 如何养成一个新习惯?如何让心智变得更成熟?如何拥有高质量的关系? 如何走出人生的艰难时刻?
@value(常用)
使用 @Value("${property}") 读取比较简单的配置信息:
@Value("${shipingsai2024}")
String shipingsai2024;
@ConfigurationProperties(常用)
通过@ConfigurationProperties读取配置信息并与 bean 绑定。
@Component
@ConfigurationProperties(prefix = "library")
class LibraryProperties {
@NotEmpty
private String location;
private List<Book> books;
@Setter
@Getter
@ToString
static class Book {
String name;
String description;
}
省略getter/setter
......
}
你可以像使用普通的 Spring bean 一样,将其注入到类中使用。
PropertySource(不常用)
@PropertySource读取指定 properties 文件
@Component
@PropertySource("classpath:website.properties")
class WebSite {
@Value("${url}")
private String url;
省略getter/setter
......
}

Spring配置文件管理:@Value、@ConfigurationProperties与PropertySource的使用
本文介绍了Spring框架中用于从配置文件读取常用配置信息的方法,包括`@Value`用于简单配置、`@ConfigurationProperties`绑定复杂配置对象以及`PropertySource`读取特定文件。以阿里云OSS、短信服务和微信认证等为例,展示了如何在Spring应用中管理配置信息。
9699

被折叠的 条评论
为什么被折叠?



