我遇到了一個不好的做法 - 在兩個服務之間創建了一個依賴關係,我不確定重構和改進它的最佳策略是什麼。用Java和Spring重構服務之間的依賴關係
這是我的例子,我有一個PurchaseServiceImpl
實現我的PurchaseService
接口,並在此PurchaseServiceImpl
我注入我CustomerService
和ProductService
:
@Service
public class PurchaseServiceImpl implements PurchaseService {
// TODO Refactor this dependency between services
@Inject
private CustomerService customerService;
// TODO Refactor this dependency between services
@Inject
private ProductService productService;
這裏我用customerService
獲取一個客戶和productService
獲取產品分別來自後端:
private Customer getCustomer(long id) throws BackendException {
try {
return customerService.getCustomer(id);
} catch (CustomerNotFoundException e) {
throw new BackendException(e);
}
}
private ProductDetails getProductDetails(long id) throws BackendException {
try {
return productService.getProductDetails(id);
} catch (ProductNotFoundException e) {
throw new BackendException(e);
}
}
什麼是你最好的策略來攻擊這種做法?目前這很容易,但感覺像債務需要相當注意。
你有什麼做法有問題嗎? –
我不想在服務之間創建依賴關係(就像我上面所做的那樣)。 – lapadets
爲什麼你認爲這是一種不好的做法? – Jesper