배경

JAVA Spring에서 RDB를 사용하면서 많은 연관 관계를 최소한의 Query로 DB를 조회함과 동시에 JAVA의 객체 지향을 살릴 수 있는 방법들을 고민해보고 방법들을 기록으로 남긴다.

최적화 항목

N:1관계에서 1의 PK 참조를 위한 Entity Proxy 객체 사용

Order doneOrder = message.buildOrder(user, 
	vacationRepository.getReferenceById(message.getMarketId()),
	sellingOrderAmount, 
	OrderStatus.DONE
);

필요한 field만 가져오기

복수 개의 Row 한번에 저장하기

연관 Table 한번에 저장 요청하기