我只是想知道如何最好地處理跨多個服務層的事務。服務層使用ORM來存儲數據庫並從中檢索。是否應該在各個服務層中瞭解和處理事務?還是應該由另一層來處理?多服務層和數據庫事務
例如:我有兩個用戶和客戶端的服務層。我想:
1)創建並保存新的客戶端
2)創建並保存新的用戶
3)用戶分配給客戶端
所有在一個單一的交易。
一個簡單的例子可能是這樣的:
$userManagementService = new UserManagementService;
$newUserData = array(...);
$newUser = $userManagementService->create($newUserData);
$clientManagementService = new ClientManagementService;
$newClientData = array(...);
$newClient = $clientManagementService->create($newClientData);
$userManagementService->assignUserToClient($newUser, $newClient);
應該在哪裏事務邏輯去?
困擾,有道理。感謝這個鏈接,在那裏有一些很好的解釋。 – 2009-11-05 13:57:28