gpt4 book ai didi

java - PropertyPlaceholder 不够用的 Spring 每个环境配置

转载 作者:行者123 更新时间:2023-11-29 03:49:02 24 4
gpt4 key购买 nike

我正在为每个环境配置我的 spring 应用程序,我遇到了以下问题:

只要环境只改变 bean 构造函数/属性值,我就可以使用 PropertyPlaceholderConfigurer .

现在我面临着 bean 结构本身在不同环境中发生变化的事实。例如。在测试环境中,我定义了单个 bean,在生产环境中,我定义了另一个具有相同接口(interface)的 bean,它需要 List set 类型的属性——换句话说,不同的结构,其中 PropertyPlaceholderConfigurer真的帮不上什么忙。

我开始定义每个环境的 spring xml 配置,通过 <import resource="myDefinition-${Environment}.xml /> 导入它.这也很好,直到我想要它是可选的。我在那里定义的资源是 @Autowired(required = false)到另一个 bean。

<import ... />不允许可选属性(在这里可以看到:https://jira.springsource.org/browse/SPR-1624)我最终得到了空的 .xml 配置文件,用于我不需要那个 bean 的环境。这有点不方便。

有人可以就这种情况下的最佳实践提出建议吗?

谢谢。

最佳答案

在 Spring 3.1 中引入的 Bean 定义配置文件旨在解决此类问题。参见 http://static.springsource.org/spring/docs/3.1.0.RC2/spring-framework-reference/html/new-in-3.1.html

关于java - PropertyPlaceholder 不够用的 Spring 每个环境配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9598957/

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