有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在spring环境中更改属性?

我在应用程序中使用spring环境Bean来获取应用程序配置属性。 我想在不重启应用服务器的情况下,从java代码更改spring环境中属性的值。我该怎么做

@Service
public void MyService {
    @Autowired
    private Environment environment;

    public void doSomething(){
        String value = environment.getProperty("myproperty");
        ...
    }
}

共 (1) 个答案

  1. # 1 楼答案

    在Spring上下文中默认得到的Environment实现实际上是StandardEnvironment的一个实例

    StandardEnvironment实现了ConfigurableEnvironment,因此如果您注入ConfigurableEnvironment而不是超级接口,那么您将能够在运行时进行更改

    @Service
    public void MyService {
        @Autowired private ConfigurableEnvironment environment;