gpt4 book ai didi

java - 在运行时更新 bean 属性

转载 作者:行者123 更新时间:2023-11-29 04:39:38 25 4
gpt4 key购买 nike

我有一个包含一些配置的 bean:

public class CustomerService{
private Config config;

@Required
public void setConfig(Config config){
this.config = config;
}
}

public Config {
private String login;
private String password;

//setters/getters
}

应用程序上下文.xml:

<bean id="config" class="Config"/>
<bean id="customerService" class="CustomerService">
<property name="config" ref="config"/>
</bean>

并且配置值是在运行时获取的(通过调用 api)。如何在运行时更新这些值?我可以使用 setter 来做吗:

customerService.getConfig().setLogin("login");

最佳答案

首先在需要的地方注入(inject)你的Spring上下文

@Autowired
ApplicationContext context;

从Spring上下文中获取customerService实例

CustomerService service = context.getBean(CustomerService.class);

在运行时对服务做必要的改变

service.getConfig().setLogin("login");

更新:您还可以从上下文中获取您的 Config 实例

context.getBean(Config.class).setLogin("login");

关于java - 在运行时更新 bean 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39755984/

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