(服务定位器)Service Locator

服务定位器模式旨在实现依赖的解耦,允许在运行时动态修改服务选择。它作为一个运行时连接器,允许类在不修改的情况下使用不同服务。JNDI作为服务定位器的标准,用于组件和分布式组件开发,如DataSource和RemoteEJB的获取。然而,依赖于特定ServiceLocator容器可能会带来额外的开发和测试挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、引入Service Locator的目的在于解耦。Service Locator模式的优点:

Service Locator充当了一个运行时的连接器的角色,可以在运行时,动态地修改一个类索要选用的服务,而不必对类作任何的修改;

一个类可以在运行时,有针对性地增减、替换所要用到的服务,从而得到一定程度的优化;

实现服务提供方、服务使用方完全的解耦,便于独立测试和代码跨框架复用。

AppResponse appResponse=new CarWebSalesJyInquiryServiceLocator().getcarWebSalesJyInquiry(url).carWxVehicleQueryJyInquiry(appRequest);
public class CarWebSalesJyInquiryServiceLocator extends org.apache.axis.client.Service //继承Service接口 
implements com.cpic.app.ebusiness.webSalesJyInterface.intf.CarWebSalesJyInquiryService //实现CarWebSalesJyInquiryService这个接口
2、ServiceLocator模式的核心思想是:讲构建依赖的接口彻底与依赖者分离,并将此依赖作为“服务”绑定到一个标识符(通常是一个字符串),而后依赖者

可以通过这个标识符获取被绑定的依赖。

例如

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值