问题标签 [propertyconfigurator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
224 浏览

spring-mvc - Spring 4.1x,SimpleNamingContextBuilder 和 @Value("#{environment.xxx}")

到目前为止,我一直在使用 Spring 4.0.8,以下工作正常:

在我的单元测试中,我在 jndi 环境中设置了一个值:

然后在我的课堂上,我像这样访问它:

我已经升级到 Spring 4.1.2,这不再有效。始终使用默认值 false,因为 Spring 无法找到该值。

如果我使用方法访问此值:

它确实有效。

我一直在搜索 SO 和整个网络,我已经看到了大量的信息,但没有一个可以帮助我解决问题。我的理解是 Spring Environment 可以访问 @Value 所做的所有值。所以我不确定问题是什么。

0 投票
1 回答
2109 浏览

java - Spring System 属性解析器自定义:

我正在开发一个项目,该项目需要我在 java spring 应用程序中获取环境变量或系统属性,并在将它们注入 bean 之前对其进行修改。修改步骤是此应用程序正常工作的关键。

我目前的方法是将变量设置为系统环境变量,然后使用自定义占位符配置器来访问上述变量并从中创建 bean 可以访问的新属性。有一个完美的教程(除了它使用数据库)。

我有一个使用这种方法的 POC 工作正常,但我认为那里可能有一个更简单的解决方案。也许有一种方法可以将默认占位符配置器扩展为“挂钩”自定义代码,以便对整个应用程序中的所有属性进行必要的修改。也许有一种方法可以在收集属性之后和将数据注入 bean 之前立即运行代码。

spring 是否提供了一种更简单的方法来做到这一点?谢谢你的时间