当前位置: 首页 > 知识库问答 >
问题:

Spring boot@值绑定问题

许展鹏
2023-03-14

Spring Boot属性解析程序面临一个奇怪的问题。

正在尝试为其中一个属性执行简单的@Value。在调试日志中,我看到该属性已匹配,但稍后报告为找不到几行。知道怎么回事吗?

Java代码:

@Configuration
public class TestAppConfig{

    @Value("${appName}")
    private String applicationName;
}

记录在下面

10 Jun 2015 18:41:42 org.springframework.core.env.PropertySourcesPropertyResolver DEBUG {Searching for key 'appName' in [applicationConfig: [classpath:/config/application-dev.yml]]}
10 Jun 2015 18:41:42 org.springframework.core.env.PropertySourcesPropertyResolver DEBUG {Searching for key 'appName' in [applicationConfig: [classpath:/config/application.yml]]}
10 Jun 2015 18:41:42 org.springframework.core.env.PropertySourcesPropertyResolver DEBUG {Found key 'appName' in [applicationConfig: [classpath:/config/application.yml]] with type [String] and value 'testApp'}

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'appName' in string value "${appName}"

共有1个答案

涂羽
2023-03-14

我猜你在web容器中部署了war应用程序,但你需要确认。您需要将下面的方法添加到类中。看看相关的帖子

@Bean
public static PropertySourcesPlaceholderConfigurer propertyPlaceholderConfigurer() {
    return new PropertySourcesPlaceholderConfigurer();
}
 类似资料:
  • 我的Spring Boot应用程序有一个文件application.yml,它不愿意运行。 根据日志,元素[simulator.geo.b12,simulator.geo.b13,simulator.geo.b21,simulator.geo.c6,simulator.geo.host]未绑定的原因。然而,这个属性是在application.yml设置的,编译器甚至会返回它的值。 如果有人能帮我解

  • 对于单选按钮,复选框及选择框的选项,v-model绑定的值通常是静态字符串 (对于复选框也可以是布尔值): <!-- 当选中时,`picked` 为字符串 "a" --> <input type="radio" v-model="picked" value="a"> <!-- `toggle` 为 true 或 false --> <input type="checkbox" v-model=

  • 问题内容: 我正在尝试进入instagram页面,但没有运气。我不断收到错误和空白的屏幕截图。 错误文字: Casperjs –version是1.1.0-beta3。 基本上,我使用以下代码: 问题答案: 如果使用了PhantomJS 2,则不再需要下面的垫片。不幸的是,CasperJS1.1-beta3还不支持它,因此您可能想要使用GitHub的master分支。 问题是PhantomJSv1

  • 我试图按照Angular文档中的英雄教程开始学习Angular,但当我开始改变一些事情时,出现了一些问题: > 对于我的项目,我使用Django rest框架作为后端,提供用于检索我的“书籍项目”的应用编程接口。我在这方面非常新,所以我只想知道API设置是否正确,但我不知道怎么做。 我开始在django中实现模型,然后是序列化器、视图集,最后是网址。 在angular中,我为http请求编写了服务

  • <el-checkbox v-model="checked" label="Option 1" size="large" /> 期望 checked 的值是 0 和 1(0 表示 true,1 表示 false)。 怎么绑定这个值呢? 尝试过: <el-checkbox :value="checked" label="Option 1" size="large" />

  • 问题内容: 我目前正在将一个大型应用程序移植到基于HTML5的Web应用程序上-我已经开始在AngularJS中构建该应用程序并享受AngularJS框架的功能- 目前,我遇到了一个问题: 我有一个给我jQuery Datepicker的指令,但是对模型的绑定似乎不起作用。 http://jsfiddle.net/9BRNf/ 我可能会误解指令的工作方式,并想了解我是否可以修补对框架的这一部分理解