felix scr中@Reference和@References注释之间的java差异
我正在开发一个OSGi包,它使用@Reference作为服务引用。在谷歌中搜索时,我可以看到一些例子,它们在类级别使用@References注释,也在仅类绑定&;取消绑定方法用于所有服务引用
@References(
@Reference(cardinality= ReferenceCardinality.MANDATORY_MULTIPLE, referenceInterface = TestInterface1.class,policy = ReferencePolicy.DYNAMIC)
@Reference(cardinality= ReferenceCardinality.MANDATORY_MULTIPLE, referenceInterface = TestInterface2.class,policy = ReferencePolicy.DYNAMIC))
class TestComponent {
..
public void bind(TestInterface1 interface)
{}
public void unbind(TestInterface1 interface){}
public void bind(TestInterface2 interface)
{}
public void unbind(TestInterface2 interface){}
}
@Reference和&@推荐信?是否有任何性能指标/推荐指标可供@References使用?自bind&;所有引用类的解除绑定方法名称都相同
# 1 楼答案
在Java7中,不可能定义repeating annotation。因此,必须使用容器注释
@References是一个容器注释,允许您在一个类型上指定多个@Reference注释。它没有任何性能差异。它不可能有,因为这些注释在运行时根本不被处理(仅由注释处理器在编译时处理)