ORM(JPA)를 왜 사용할까?
2022. 3. 24. 00:02
JPA
ORM을 왜 사용하는가? SQL 의존적 개발 객체지향은 객체를 기반으로 개발을 해야하는데 관계형 데이터베이스를 사용하기 때문에 반복적인 SQL 작업을 해야한다. 패러다임의 불일치를 해결하자. 상속 객체는 상속관계가 있지만 데이터베이스는 없다. 출처 : 스프링 핵심 원리 - 기본편 하지만 위의 그림처럼 데이터베이스도 슈퍼타입 서브타입의 관계로 상속과 비슷한 구조로 설계할 수는 있다. 그렇다면 이제 어떤 부분이 불일치가 될까? 각각의 테이블에 따른 조인 SQL을 작성하고 각각의 객체에 매핑을 해줘야 한다. Album을 조회한다고 가정 해보자. 각각의 테이블에 따른 조인 SQL 작성 매핑할 각각의 객체 생성 이런 과정을 반복하게 된다. 이게 왜 문제가 될까? 만약 데이터베이스를 사용하지 않고 자바 컬렉션에 저..