【发布时间】:2017-04-24 04:47:14
【问题描述】:
我注意到开发人员创建 Apache Felix 服务的多种方式。每个附加的 sn-ps 似乎都有效。需要一些帮助才能理解,哪种语法最适合哪种场景
示例 1:无接口创建的服务
- 服务声明
D
@Component
@Service(ServiceViaClass.class)
public class ServiceViaClass{
}
-
通过@Reference注解使用服务
私有ServiceViaClass serviceViaClass;
示例2:服务实现接口。 @Service 注释没有值属性 - 服务声明
@Component
@Service
public class ServiceViaInterfaceImpl implements ServiceViaInterface{
}
-
通过@Reference注解使用服务
私有ServiceViaInterface serviceViaInterface;
示例 3:带有 @Service 注释的 value 属性的服务实现接口 - 服务声明
@Component
@Service(ServiceViaInterface.class)
public class ServiceViaInterfaceImpl implements ServiceViaInterface{
}
-
通过@Reference注解使用服务
私有ServiceViaInterface serviceViaInterface;
【问题讨论】:
标签: osgi apache-felix declarative-services