我有一个配置文件,我想根据个人资料创建不同的bean。
出于某种原因,这是有效的:
@Configuration
@Profile("myProfile")
public class myClass {
这不是,在Eclipse中给出错误消息:
此地点不允许使用注释
@Profile
@Bean
@Profile("myProfile")
我宁愿使用第二种,但我不确定我是否可以。 Spring API说应该可以工作:
@Profile
注释可以通过以下任何方式使用:
- 直接或间接作为任何类的类型级注释 使用
@Component
进行注释,包括@Configuration
类- 作为一个 元注释,用于组成自定义构造型 注释
- 作为任何@Bean方法的方法级注释
我正在使用Sping Framework 3.1.0,是否有可能仅在@Bean
方法之后使用?
答案 0 :(得分:5)
是的,它是在春季推出的。
答案 1 :(得分:3)
在Spring 3.x个人资料中,注释仅限于某种类型。自Spring 4起,您也可以在方法上使用@Profile
。
您需要将Spring版本更新到至少版本4.