문제

일부 제약 조건을 기반으로 여러 테이블에서 인서트 및 업데이트가 수행되는 특정 시나리오가 있습니다. 따라서 이러한 시나리오에 트랜잭션 범위를 사용하는 것은 당연합니다. 서비스 계층은 저장소와 UI를 중재하고 지속적으로 무지합니다. 이제 서비스 또는 저장소 계층에서 트랜잭션을 사용할 위치가 혼란 스러웠습니다. 또한 사람들이 그러한 시나리오의 작업 단위 패턴에 대해 옹호하는 것을 보았습니다. 내 현재 시나리오에 맞는 작업 단위 패턴에 대한 예가 있습니까? 내가 본 모든 예는 orms를 사용하는 것입니다.

감사,

도움이 되었습니까?

해결책

이것은 물론 시스템에 따라 다르지만 일반적으로 서비스 계층에서 수행합니다. 특히 서비스 계층 메소드가 여러 세분화 된 저장소 방법을 호출하여 모든 커밋 또는 모든 롤백을 기대하는 경우.

다른 팁

이에 대한 대답에 도움이 될 수있는 몇 가지 질문.

거래 요구 사항을 이해하는 계층은 무엇입니까? 저장소 인터페이스의 세분성은 무엇입니까?

내 세상에서 우리는 세밀한 지속성 작업, 삽입, 업데이트, 삭제를하는 경향이 있습니다. 그런 다음 서비스 계층에서 구성하십시오. 따라서이 환경에서는 거래 범위를 이해하는 서비스 계층 인 것이 분명해 보입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top