0
我必須爲不同類型的合同實施服務。起初,我們考慮創建一個spring服務,使用if結構重定向到一個類型特定的服務。取決於某個屬性的彈簧注入
春天必須有更好的解決方案。
是否有一種簡單的方法來動態注入每種類型的服務使用spring知道每個類型都會有一個抽象服務和一個實現。
例子:
@Inject ContractService contractService;
...
Contract iContract = new InsuranceContract(...);
Contract sContract = new SaleContract(...);
...
contractService.save(sContract);
contractService.save(iContract);
的ContractService是抽象的,春天會得到取決於合同類型提供適當的服務。
問候
那麼使用命名約定和反射的解決方案是一個更好的解決方案嗎? – Jan 2012-02-21 17:04:56
恕我直言,我會去尋找最簡單的解決方案...所以,如果你只有一個接口和一些實現,我會去顯式的解決方案,就是這樣,創建一個服務定位器,如你所說...如果你有一個更復雜的場景,有許多接口和實現,然後我會考慮反射解決方案..你必須記住,你使用的標準Java解決方案越多,即Frameworks,reflection ...越難閱讀和維護你的代碼。 – 2012-02-21 17:11:52