[英]How does dependency injection work in EJB's following polymorphism
假設我有一個接口,我們稱之為 A 並且有兩個類實現了這個接口。 現在,當我進行依賴注入時,我如何提及要調用的特定實現。
@Local
interface SortAlgo{
void sort();
}
class bubbleSort implements SortAlgo{
void sort(){
// logic
}
}
class insertionSort implements SortAlgo{
void sort(){
// logic
}
}
現在依賴注入
class SortArray{
@EJB
SortAlgo sortAlgo;
System.out.println(sortAlgo.sort());
}
在這一點上,我將提到要選擇哪個實現。
例如,如果您有通過 Verizon 或 T-Mobile Gateway 發送 SMS 的 SMS EJB,則:
@Local
public interface SmsProvider {
public void sendSms(Sms sms);
}
T移動:
@Stateless(name = "SmsProviderTMobile")
public class SmsProviderTMobile implements SmsProvider {
...
}
威瑞森:
@Stateless(name = "SmsProviderVerizon")
public class SmsProviderVerizon implements SmsProvider {
...
}
然后你可以像這樣注入特定的實現:
@EJB(beanName = "SmsProviderTMobile")
SmsProvider smsProviderTMobile;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.