public interface OrderService { void createOrder(String customerId, double amount); List<Order> getOrders(String customerId); void updateOrderStatus(int orderId, String status); } @Named("orderService1") @Service public class OrderServiceImpl1 implements OrderService { } @Named("orderService2") @Service public class OrderServiceImpl2 implements OrderService { } public class OrderQueryComponent { @Inject @Named("orderService1") private OrderService orderService; } Bundle-Name: OrderManagement Bundle-SymbolicName: com.example.order Bundle-Version: 1.0.0 Import-Package: javax.inject;version="1.0.0", org.osgi.framework;version="1.8.0" Provide-Capability: osgi.service;objectClass=com.example.order.OrderService Service-Component: OSGI-INF/com.example.order.OrderServiceImpl1.xml, OSGI-INF/com.example.order.OrderServiceImpl2.xml - OSGI-INF/com.example.order.OrderServiceImpl1.xml: <?xml version="1.0" encoding="UTF-8"?> <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.3.0"> <implementation class="com.example.order.OrderServiceImpl1" /> <service> <provide interface="com.example.order.OrderService" /> </service> </scr:component> - OSGI-INF/com.example.order.OrderServiceImpl2.xml: <?xml version="1.0" encoding="UTF-8"?> <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.3.0"> <implementation class="com.example.order.OrderServiceImpl2" /> <service> <provide interface="com.example.order.OrderService" /> </service> </scr:component>


上一篇:
下一篇:
切换中文