반응형
JPA 란?
- Java Persistence Api의 약자로 자바 진영의 ORM 기술 표준
- JPA는 인터페이스이므로 구현체가 필요함
- 대표적인 라이브러리(구현체) : Hibernate
ORM 이란?
- Object Relational Mapping의 약자로 객체와 관계형 DB를 매핑
SQL Mapper 란?
- 객체와 SQL의 필드를 매핑하여 데이터를 객체화하는 기술
- 대표적인 라이브러리 : MyBatis, JdbcTemplate
ORM VS SQL Mapper
- SQL Mapper은 쿼리를 직접 작성해야 하지만 ORM은 직접 작성하지 않아도 됨
- SQL Mapper은 DBMS에 종속적이지만 ORM은 DBMS에 종속적이지 않고 객체 중심의 개발 가능
- 하지만 복잡한 쿼리를 해결할 때는 SQL Mapper가 더 용이하고 ORM이 학습하는데는 더 어려움
JDBC 란?
- Java DataBase Connectivity의 약자로 DB의 종류에 상관없이 Java와 DB를 연결시켜줌
JPA가 DB에 접근하는 과정
- User라는 객체를 만들고 이 안에 name, age, email 등의 변수들이 있다고 가정
- 이것을 DB에 등록해야 함
- JPA가 User 객체를 관계형 DB에 매핑
- JDBC가 DBMS에 맞는 쿼리를 자동으로 만들고 뿌려줌
- DB에서는 이 쿼리를 받아 실행
- DB에 접근 (CRUD 가능)
반응형
'Spring Boot > 문법 정리' 카테고리의 다른 글
[Spring Boot] 관계형 DB - 순환 참조 해결 방법 ( DTO활용 방법 등 ) (0) | 2022.07.03 |
---|---|
[Spring Boot] Entity Manager을 사용한 MySQL CRUD 예제 (1) | 2022.07.01 |
[Spring Boot] 파일 업로드 (6) | 2022.06.29 |
[Spring Boot] Converter & Formatter (0) | 2022.06.28 |
[Spring Boot] Filter & Interceptor (0) | 2022.06.23 |