8

我想使用功能切换范例。具体来说,我希望我的 Spring 上下文包含基于切换的不同 bean 定义。

我遇到过这个:http ://robertmaldon.blogspot.com/2007/04/conditionally-defining-spring-beans.html ,看起来不错,但可能有点太麻烦了

4

2 回答 2

4

您可以使用spring 配置文件- 简而言之,您使用配置文件设置运行您的应用程序,并且上下文包含不同的 bean,具体取决于该配置文件。

于 2011-10-09T09:23:51.117 回答
3

我相信您实际上正在寻找的是 Spring 管理不同配置文件的一种方式。

不幸的是,在撰写本文时,不存在这样的功能。据我所知,人们通常会设计各种方案来解决这个问题,但本质上是使用 SpringPropertyPlaceholderConfigurer将不同的运行时配置“注入”到他们的属性文件中,方法是放入${placeholder}他们的 Spring 导入语句,然后在他们的环境发生变化时取消引用这个占位符(例如“开发”、“测试”、“产品”)。

不过,Spring 3.1 将改变这一点——因为它将引入@Profile注解,该注解似乎与 Spring Java 配置选项很好地结合在一起,提供了一种完全放弃 XML 配置的方法(当然,应该选择这样做)。

也许这篇文章会更清楚地说明这一点:Spring 3.1 M1: Introducing @Profile

于 2011-10-09T09:23:30.847 回答