로직 배치
374
작성한 질문수 4
안녕하세요! 선생님 강의 잘 보고 있습니다.
강의를 보며 MyBatis로 개발된 프로젝트에 JPA를 적용해보고 있는데요.
change 라는 메소드를 도메인객체에 작성하신 부분에 질문이 있습니다.
기존 프로젝트에서는 update 나 휴면계정처리 같은 메소드를 모두 dao에 배치했었는데 JPA를 적용하는 과정에서 update, 휴면계정처리 또는 로그인 상태 확인 과 같은 메소드는 어디에 배치하는 것이 좋을지 헷갈리기 시작합니다.
질문이 미시적인데요. 결과적으로 domain, repository, service, controller 에 배치되는 로직의 기준에 대해 팁을 알고 싶습니다.
맞는 말인지는 모르겠지만 예시를 들자면 아래와 같이요.
ex) repository에는 DB에 접속이 꼭 필요한 메소드만 작성한다.
답변 1
0
안녕하세요. 민준님
이런 부분은 비즈니스 로직으로 보고 service 또는 domain에 두시면 됩니다.
핵심 비즈니스 로직 service, domain
여기에서 domain은 본인이 스스로 처리할 수 있는 부분만 감당하고, service와 함께 사용해야 합니다.
domain이 여러 엔티티에 걸쳐 있어서 스스로 해결하지 못하는 경우에도 serivce가 필요합니다.
또는 serivce에서만 처리하셔도 됩니다.
컨트롤러는 HTTP 요청을 주로 받아서 처리하는 진입점 역할을 합니다.
repository 데이터를 저장하고 조회하는 업무를 처리하면 됩니다.
감사합니다.
OrderServiceTest 상문주문 테스트 시 update 쿼리 문의
0
27
1
sdk 설정 오류
0
68
2
오탈자 - @Transactional
0
63
1
src/test/resources 테스트 경로 문제
0
60
1
상품 등록후 H2 db 출력 순서 바꿀 수 있나요?
0
70
1
MemberRepositoryTest 실행오류
0
90
1
boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)
1
197
2
강의 마지막 QueryDSL 사용 부분 질문있습니다
1
154
2
클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.
0
57
1
도메인 모델 패턴 vs 트랜잭션 스크립트 패턴
0
81
1
기본 생성자
0
67
1
h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.
0
107
1
멤버서비스테스트 부분에서 막힙니다.
0
174
4
실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?
0
124
1
초반에 h2 다운로드 과정 꼭 필요한가요?
0
129
2
자신 필드에도 get으로 접근하는 이유가 있을까요?
0
122
1
24분 27초 연관관계 편의 메서드 위치
0
118
1
단건 주문만 가능하게 한건 의도한 부분이신가요?
0
114
2
빌드 툴, Gradle
0
65
1
h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다
0
82
2
Repository에서 EntityManager 주입 방식 차이
0
97
1
롬복과 사용자 정의 setter 메서드
0
78
1
주문 목록 조회 fetch join 질문드립니다
0
91
1
dirty checking 질문드립니다.
0
87
1





