크리스마스에 시작한 클라우드 2기가 어느 덧 한달이 다 되어간다. 코드를 직접 작성하여 제출하고 채점받는 앨리스 플랫폼에도 어느정도 익숙해졌다. 특히 이번 주에 수백번 sql문을 실행해보면서 머리로 안다는 것과 손가락 끝에서 나오는 바이브의 차이를 확실히 알 수 있었다
JPA(Java Persistence API)와 같은 ORM(Object Relational Mapping)을 사용할 경우 연관관계 설정은 데이터베이스와 객체지향 프로그래밍 언어 사이의 간극을 메우는 중요한 역할을 한다. 관계를 사용하면 연관된 엔티티의 정보를 쉽게 추
N+1 문제란 어떤 명령을 실행하기 위해 하나의 쿼리가 필요하다고 생각했지만, JPA가 연관된 엔티티를 불러오는 과정에서 추가로 N개의 쿼리가 발생하는 현상을 말한다. JPA의 기본 fetch 전략 JPA에서 엔티티 간 관계를 맺을 때, 관련된 엔티
프로젝트를 진행하면서 공간 상세 유형이 추가로 선택할 때마다 검색 조건에 추가하고 싶었다. JPQL로 이를 구현하고 싶었지만, 상세 타입이 하나만 있거나 아예 없거나 이 두가지 경우만 처리할 수 있었다. 세부 사항이 추가될 때마다 서비스 로직에서 분기 처리를
JOIN 두 개 이상의 테이블을 연결하여 데이터를 출력하는 명령어를 말한다. JOIN 연산자를 이용해 관련 있는 컬럼 기준으로 행을 합치는 연산이다. 1. 내부 조인(Inner Join) 두 테이블 간 교집합을 반환한다. Inner를 생략할 수 있다.
관계 대수 관계형 데이터베이스 관리 시스템에서 데이터를 조회하기 위한 수학적인 언어를 관계 대수라고 한다. 즉 원하는 데이터를 얻기 위해 What(무엇)을 설명하고, How(어떻게)에 대한 구체적인 처리 과정은 DBMS(데이터베이스 관리 시스템)가 결정한다. 일반 집합
객체 지향으로 도메인 모델을 구현할 때 주로 사용하는 ORM 기법은 도메인 상태 변경 기능을 구현하는 데는 적합하지만, 주문 상세 조회 화면처럼 여러 애그리거트에서 데이터를 가져와 출력하는 기능을 구현하기에는 고려할 게 많아 구현을 복잡하게 한다.구현 복잡도를 낮추는