자바/JPA
[Jpa] 파사드 계층을 추가하는 법
OverTheHorizon3410
2023. 11. 17. 22:23
파사드 계층의 역할과 특징
- 논리적 의존성의 분리
- 프레젠테이션 계층과 서비스 계층간의 논리적 의존성 분리
- 프록시 객체 초기화
- 프레젠테이션 계층에서 필요한 프록시 객체를 초기화
- 비즈니스 로직 수행
- 엔티티 조회
- 레포를 직접 호출해 뷰가 요구하는 엔티티를 찾는다.
- 트랜잭션의 관리
- 프록시를 초기화하기 위해
- 파사드 계층에서 트랜잭션을 시작해야
class OrderFacade {
@Autowired
OrderService orderService;
public Order findOrder(id) {
Order order = orderService.findOrder(id);
// 프리젠테이션 계층이 필요한 프록시 객체를 강제로 초기화한다.
order.getMember().getName();
return order;
}
}
class OrderService {
public Order findOrder(id) {
return orderRepository.findOrder(id);
}
}
- 프록시 객체의 초기화는 파사드 계층에서 수행하고
- 서비스는 오로지 비즈니스 로직 수행에 집중함
장 / 단점
- 장점
- 논리적 의존성 분리
- 단점
- 중간 계층의 추가로 코드가 더 복잡해짐
- 관리해야할 코드의 양이 증가
Uploaded by N2T