Я сочинительство одну услуги и наблюдали @property мы можем определить также внутри службы, как и в моей ниже коде:в OSGi @ свойства
@Component(metatype = true, immediate = true, description = "Demo Service to test")
@Service(value = DemoService.class)
@Properties({
@Property(name = "testprop" , value = "This is Test Property")
})
public class DemoServiceImpl implements DemoService {
@Property(name = "localprop", value = "Local Value")
@Activate
public void activate(ComponentContext ctx)
{
String testprop = (String)ctx.getProperties().get("testprop");
String localprop = (String)ctx.getProperties().get("localprop");
}
}
Оба свойства отображаются в ФЕЛИКС консоли & доступной внутри моей службы. Итак, что создает разницу, чтобы объявить их внутри компонента или снаружи. Один я видел, что мы не можем использовать @Properties внутри компонента. Но не уверен, что делает их функционально отличными друг от друга &, когда их использовать.