카테고리 없음

ORM에 대한 개념과 JPA에 대한 개념 정리 및 장단점

박수연_01 2023. 11. 6. 06:11

ORM이란?

Object Relational Mapping

 

객체(Object)와 DB의 테이블을 Mapping 시켜 RDB 테이블을 객체지향적으로 사용하게 해주는 기술이다.

 

쉽게 말하자면  어플리케이션과 데이터베이스 연결 시 SQL언어가 아닌 어플리케이션 개발언어로 데이터베이스를 접근할 수 있게 해주는 툴입니다.

 

객체 지향 프로그래밍은 클래스를 사용하고 관계형 데이터 베이스는 테이블을 사용합니다. 여기서 객체 모델과 관계형 모델간에 불일치가 발생하게 되는데, ORM은 이러한 불일치를 객체간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결합니다.

JPA란?

Java Persistence API

 

JPA는 ORM 기술의 표준 명세로 자바에서 제공하는 API이다. 즉, JPA는 인터페이스고 이를 구현한 대표적인 구현체로 Hibernate, EclipseLink, DataNucleus, OpenJpa, TopLink 등이 있다.

JPA 장점

 - 실제로 필요한 양으로 작업을 줄임으로써 데이터 액세스 계층의 구현을 크게 개선

 

- 특정 데이터베이스에 종속되지 않음

 

- 객체지향적 프로그래밍

 

- 유지보수

  • 테이블 칼럼 변경 시 이전에는 SQL을 모두 확인 후 수정 필요
  • JPA는 JPA가 대신 작업을 수행하므로 유지보수 측면에서 장점이 있음

JPA 단점

- 복잡한 쿼리 처리

- 성능 저하 위험

  • 직접 SQL을 호출하는 것보다 성능이 낮을 수 있음

 

 

참고

https://velog.io/@dev_zzame/JPA%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EC%9E%A5%EB%8B%A8%EC%A0%90%EC%9D%80-%EB%AD%90%EA%B0%80-%EC%9E%88%EC%9D%84%EA%B9%8C

 

JPA란 무엇인가, 그리고 장단점은 뭐가 있을까?

JPA(Java Persistence API)는 자바 ORM 기술에 대한 API 표준이다. ORM이란 Object Realational Mapping의 약자로 객체와 관계형 데이터베이스를 매핑해주는 것을 말한다. 그렇다면 ORM기술은 왜 나왔을까? JPA를 공

velog.io

https://velog.io/@imsooyeon/Spring-JPA-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%9E%A5%EB%8B%A8%EC%A0%90