[Spring JPA] JPA와 ORM

구민지·2023년 9월 24일
0
post-thumbnail

✔️ ORM

먼저 JPA를 알아보기 전에 ORM개념을 이해하고 가자!

ORM 이란 Object-Relational Mapping 의 약자로 객체와 데이터베이스의 관계를 매핑해주는 도구이다.

✔️ 왜 orm이 필요할까?

  1. 패러다임 불일치를 해결해준다.
    요기서 패러다임 불일치란 관계형 데이터베이스와 객체 지향 프로그래밍 사이의 데이터 표현 방식이 생기는 문제를 말한다.
  • 관계형 데이터베이스 : 어떻게 데이터를 저장할지에 초점이 맞춰진 기술
  • 객체 지향 프로그래밍 : 기능과 속성을 한 곳에서 관리 기술
    이렇듯 관계형 데이터베이스와 객체지향 프로그래밍 언어의 패러다임이 서로 다르다는 문제점이 있는데 orm으로 객체와 데이터베이스를 매핑해줌으로써 이 문제를 해결할 수 있다.
  1. SQL query가 아니라 메서드로 데이터를 조작할 수 있게 해준다.
    관계형 데이터베이스가 SQL만 인식할 수 있기때문에 각 테이블마다 기본적인 CRUD sql을 매번 생성해야하는 단순 반복 작업을 피할 수 있게 해준다.

✔️ JPA


JPA(Java Persistence API)는 Java 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용하는 인터페이스 모음이다.
JPA는 인터페이스의 모음이므로 구현체가 필요한데 대표적으로 Hibernate가 있다.

✔️ 왜 JPA를 사용해야할까?

  1. SQL이 아닌 객체 중심으로 개발할 수 있게 된다. 이에 따라 생산성이 높아지고 유지보수 또한 용이해진다.
  2. 패러다임 불일치를 해결해준다.
    예를 들어 Java에 있는 상속, 1:N 등의 다양한 객체 모델링을 데이터베이스로 구현할 수 없는 불일치가 있는데 이러한 불일치를 해결해준다.
  3. 반복적인 CRUD SQL을 처리해준다.

0개의 댓글