gpt4 book ai didi

spring - 如何更改/更新/删除 Spring ConfigurableEnvironment 中的属性

转载 作者:行者123 更新时间:2023-12-02 03:05:59 26 4
gpt4 key购买 nike

在 Spring 中,您可以使用注入(inject)环境对象来读取所有环境属性

@Resource
private org.springframework.core.env.Environment environment;

所以问题是我可以通过编程方式更改某些属性的值吗?

我看到的唯一解决方法是获取保存此属性的所有 MutablePropertySource。从环境中完全删除此源,并添加一个新的 PropertySource,其中包含前一个源的所有属性 + 已更改的属性(或已删除的属性)。

但是这看起来很难看并且会很慢;(

最佳答案

// ConfigurableEnvironment env
MutablePropertySources propertySources = env.getPropertySources();
Map<String, Object> map = new HashMap<>();
map.put(myObject.getKey(),
myObject.getQuery());
propertySources
.addFirst(new MapPropertySource("newmap", map));

关于spring - 如何更改/更新/删除 Spring ConfigurableEnvironment 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26033779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com