java - Spring @PropertySource 值不覆盖

标签 java spring spring-boot spring-annotations

在我的 sprint 启动应用程序中,我有一个配置类来读取属性文件:common.propertiesdev.properties。我在两个属性文件中都有相同的 key server.url。该值不会被覆盖。根据 spring 文档,应采用最后一个属性文件值。但这不起作用。我正在使用 spring 注释 @PropertySource 来读取值。

服务器配置类

@Component
@PropertySources(
{
    @PropertySource(value = "file:Common/config/common.properties", ignoreResourceNotFound = true),
    @PropertySource(value = "file:Dev/config/dev.properties", ignoreResourceNotFound = true)
})
public final class ServerConfiguration {


private final ApplicationContext applicationContext;

/**
 * The Server URL
 */
@Value("${server.url}")
private String serverUrl;

}

common.properties

server.url=ws://some ip

dev.properties

server.url=ws://localhost:8080

始终采用common.properties 中的值。我尝试更改顺序,但仍然不起作用。

最佳答案

您需要在 application.properties 文件中添加您的 Activity 配置文件

spring.profiles.active=dev

关于java - Spring @PropertySource 值不覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40526820/

相关文章:

java - LU 分解方法中线程 "main"java.lang.NullPointerException 异常

java - 您如何轻松地将修改后的代码与引用实现进行比较?

java - 线程 "main"java.lang.NoClassDefFoundError : org/junit/Assume$AssumptionViolatedException 中的异常

java - Spring Boot无法连接MySQL并在Docker/Docker compose中退出

java - Android 自定义 facebook 按钮,图标无法正确加载

java - 有地理哈希集合吗?

java - 测试单元 Spring Boot : Unable to register mock bean

spring - @Autowired 验证器内的 DAO

java - 方法上的 NullPointerException (NativeMethodAccessorImpl.invoke0(Native Method)

jackson - 无法使用 Jackson 将 java.time.LocalDate 序列化为字符串