【发布时间】:2023-02-07 06:26:23
【问题描述】:
@Component
public class MovieRecommender {
private final String catalog;
public MovieRecommender(@Value("${catalog.name}") String catalog) {
this.catalog = catalog;
}
}
@Configuration
@PropertySource("classpath:application.properties")
public class AppConfig { }
以及以下 application.properties 文件:
catalog.name=MovieCatalog
Spring 提供了一个默认的宽松嵌入值解析器。它 将尝试解析属性值,如果无法解析, 属性名称(例如 ${catalog.name})将被注入为 价值。
“无法解决”是什么意思?如果我在 application.properties 中没有这个属性,它会给我错误:
Could not resolve placeholder 'catalog.name' in value "${catalog.name}"更新:
我想到了。在 Spring 核心中,如果找不到属性,则使用 ${catalog.name}
但是在 SpringBoot 中,如果找不到属性,则会报错。
【问题讨论】:
标签: spring