春天有它自己的Qualifier
注释,我认为它相当于javax.inject.Named
注释,它又是 JSR-330 中的具体限定符。
所以,我想知道哪个版本的 Spring(如果有的话)支持 Qualifier?
这是我的示例用法,不幸的是它不适用于 spring-context 3.0.5:
@Retention(RUNTIME)
@javax.inject.Qualifier
public @interface Version {
String value();
}
@Configuration
public class MyConfig {
@Bean("book-12") @Version("a") Book book12a() { ... }
@Bean("book-12") @Version("b") Book book12b() { ... }
}
@Component
public class UserClass {
@Inject @Named("book-12") Book anybook12;
@Inject @Named("book-12") @Version("b") Book book12_b;
}
是的,它支持所有javax.inject.*
注释。我自己也用过javax.inject.Qualifier
顺便说一句,我想你想要@Service
or @Component
代替@Bean
,你需要你的Book
类由 spring 管理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)