gpt4 book ai didi

spring - 如何在不由 spring 管理的 pojo 中从 Spring Context 获取属性?

转载 作者:行者123 更新时间:2023-12-04 18:11:14 25 4
gpt4 key购买 nike

我有一个在 spring 上下文 xml 文件中配置的属性文件。我从文件中加载值很好。
我正在尝试从该属性文件中加载一个非 spring 管理的常规 pojo 中的属性。由于 Spring 已经加载了该属性,我想知道是否有办法获取该值,而不必手动加载属性文件?

最佳答案

如果您的 pojo 不是由 Spring 管理的,您可以以静态方式访问 Spring 上下文。

将 bean 添加到您的应用程序 xml:

<bean id="StaticSpringApplicationContext" class="com.package.StaticSpringApplicationContext"/>

创建类(class):
public class StaticSpringApplicationContext implements ApplicationContextAware  {
private static ApplicationContext CONTEXT;

public void setApplicationContext(ApplicationContext context) throws BeansException {
CONTEXT = context;
}

public static Object getBean(String beanName) {
return CONTEXT.getBean(beanName);
}

}

然后您可以使用以下命令从您的 POJO 访问任何 Spring bean:
StaticSpringApplicationContext.getBean("yourBean")

关于spring - 如何在不由 spring 管理的 pojo 中从 Spring Context 获取属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13631052/

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