目的:乙個介面多個實現時,根據不同的條件呼叫不用的實現
1、有如下介面
public inte***ce pay
2、有如下兩個實現
實現一:
@service("weixinpay")
public class weixinpay implements pay
}
實現二:
@service("alipay")
public class alipay implements pay
}
3、根據不同的條件呼叫不同的實現
方法一:
@resource(name="weixinpay")
shoppay weixinpay;
@resource(name="alipay")
shoppay alipay;
方法二:
@autowired
@qualifier("weixinpay")
shoppay weixinpay;
@autowired
@qualifier("alipay")
shoppay alipay;
Autowired乙個介面有多個實現類
autowired是spring的註解,預設使用的是bytype的方式向bean裡面注入相應的bean。例如 autowired private userservice userservice 這段 會在初始化的時候,在spring容器中尋找乙個型別為userservice的bean實體注入,關聯到...
乙個介面多個實現類,controller層如何操作
今天,寫 時,突發奇想,每次寫service層時 都是乙個介面對應乙個實現類,如果有多個實現類實現同乙個介面,那麼在controller層中,注入後呼叫,咋知道到用的是哪個介面的方法,經過一番測試,和查詢資料,終於找到了結果 乙個介面多個實現類,需注入指定的實現類 例如 inte ce 介面有兩個實...
多個實現類,呼叫指定實現類
場景 service介面有多個實現類,controller如何呼叫指定實現類呢?controller層 controller public class testcontrollerservice介面 description 公共測試service author bhy date 2020 10 14...