2012-02-13 2 views
1

엔티티 Institute과 저장소 InstituteRepository이 있습니다.이 저장소는 조건을 통과하여 Institute 개체를 가져옵니다. 이제 신청서에 어학원 페이지 (기관 테이블을 보았던 횟수, 데이터베이스 테이블에 저장되고 업데이트 된 횟수)가 ViewCount이 필요합니다.DDD에 이러한 종류의 쿼리를 넣을 위치

나는 Institute 개체를 캐시하지만 ViewCount는 매우 동적이므로 매번 새로 고침하고 싶습니다. 질문은 어디에서 getViewCount() 기능을 넣어야합니까?

getViewCount()과 같은 기능을 InstituteRepository에 사용할 수 있습니까? 그렇지 않다면 가장 좋은 곳은 무엇입니까?

모호한 제목에 대해 도움을 주시면 감사하겠습니다.

답변

3

이것은 "보기 관련 동작"을 추적하는 별도의 경계 컨텍스트에 맞을 것입니다. 저장소가 필요 없습니다. 관계형 데이터 저장소를 사용한다고 가정하면이 정보를 추적하기 위해 "InstituteViewRecord (instituteid, 사용자 뷰 ID, 날짜 및 시간보기) 값 (...) 값을 삽입하십시오." "instituteid ="인 InstituteViewRecord에서 count (*)를 선택하십시오. 키스. 모든 원격 요구 사항은 RPC 또는 다른 메시징 메커니즘을 사용하여 만족시킬 수 있습니다. 나는이 기능이 핵심 도메인인지 의심 스럽다.

+0

+1, 여기서 DDD 패턴의 적용은 아마도 필요하지 않을 것이다. 모든보기에 대해 간단한 카운터를 포함하는 하나의 표로 이것을 제거 할 수도 있습니다. –

+0

하지만이 쿼리는 어디서 작성합니까? 내가 DAO에 써야하고 필요할 때마다 DAO를 직접 사용해야합니까? – Vikk

+0

예, 뭐가 잘못 되었나요? 이런 식으로 생각해보십시오. 나를 구입하는 추가 추상화는 무엇이며 어디에서나 동일한 패턴을 적용해야합니까? –

관련 문제