javax.inject.Named注释应该用于什么?
我试图了解该javax.inject
软件包,但不清楚javax.inject.Named
应将注释用于什么目的。Javadoc
没有解释其背后的想法。
Javadoc位于http://download.oracle.com/javaee/6/api/javax/inject/Named.html
我正在使用Spring 3.0编写一些示例程序,通过放在@Named一个Bean上似乎将其添加到Bean工厂中,但是Javadoc的描述是如此之轻,我无法分辨这是标准行为还是特定于Spring的行为。
我的问题是:
@Named
和之间有什么区别@Qualifier
- 你应该如何告诉
Runtime
系统某个类在其他类中应该是可注入的,它的注释是什么?相当于@Component
spring?
回答:
使用@Named
以区分在同一范围内绑定同一类型的不同对象之间。
@Named("maxWaitTime")public long maxWaitTimeMs;
@Named("minWaitTime")
public long minWaitTimeMs;
没有@Named
限定词,注入器将不知道绑定到哪个变量的时间长。
如果要创建类似
@Named
的@Qualifier
注释,请在创建它们时使用注释。如果你看一下
@Named
,它本身会带有注释@Qualifier
。
以上是 javax.inject.Named注释应该用于什么? 的全部内容, 来源链接: utcz.com/qa/428973.html