본문 바로가기

공부 기록/영상 후기

[10분 테코톡] 아마찌의 ORM vs SQL Mapper vs JDBC

https://youtu.be/VTqqZSuSdOk

Persistence : 데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터의 특성 == 영속성

JDBC(Java Database Connectivity) : 자바에서 DB에 접속할 수 있도록 하는 자바 API

Persistence Framework : JDBC 프로그래밍의 복잡함이나 번거로움 없이 간단한 작업만으로 DB와 연동되는 시스템을 빠르게 개발

SQL Mapper : SQL 문과 객체의 필드를 매핑하여 데이터를 객체화

패러다임 불일치 : 객체지향(추상화, 상속, 다형성) <=> RDB(데이터 중심의 구조). 각각 지향하는 목적이 달라서 사용 방법과 표현 방식에 차이가 있다.

ORM(Object Relational Mapping) : 객체와 관계형 DB를 맵핑. SQL Query가 아닌 직관적인 코드(메서드)로 데이터 조작

 

ORM의 장점

- 패러다임 불일치 문제 해결 : 객체지향 언어가 가진 장점을 활용할 수 있음

- 생산성 : 반복적인 CRUD용 SQL을 개발자가 직접 작성하지 않아도 됨

- 데이터 접근 추상화, 벤더 독립성 : DB 벤더마다 미묘하게 다른 데이터 타입, SQL을 손쉽게 해결

- 유지보수 : 필드 추가, 삭제 시 관련된 CRUD 쿼리를 직접 수정하지 않고, 엔티티를 수정하면 됨