
: 객체 관계 맵핑 Object Relational Mapping. 자바와 같은 객체지향 언어에서 의미하는 객체와 RDB의 테이블을 자동으로 매핑하는 방법
💠 사용 장점
1. 데이터베이스 쿼리를 객체지향적으로 조작할 수 있어 개발 비용을 줄이고 가독성을 높일 수 있다.
2. 재사용, 유지보수가 편하다.
3. 데이터베이스에 대한 종속성이 줄어든다.
💠 단점
1. ORM만으로 온전한 서비스를 구현하기에 한계가 있다. (복잡한 서비스의 경우 직접 쿼리를 구현해야 할 일이 있음)
2. 애플리케이션의 객체 관점과 데이터베이스의 관계 관점의 불일치 발생
: Java Persistence API. 자바 진영의 ORM 기술 표준으로 채택된 인터페이스 모음.
✅ JPA의 매커니즘을 보면 내부적으로 JDBC 사용
✅ 개발자가 직접 JDBC를 구현하면 SQL에 의존하게 되는 문제 등이 있어 개발 효율성이 떨어짐
✅ JPA가 개발자 대신 적절한 SQL 생성, 데이터베이스를 조작해서 객체를 자동으로 매핑하는 역할 수행
: 자바 ORM 프레임워크. JPA가 정의하는 인터페이스를 구현하고 있는 JPA 구현체 중 하나.
💠 Spring Data JPA
- JPA를 편리하게 사용할 수 있도록 지원하는 스프링 하위 프로젝트
- CRUD 처리에 필요한 인터페이스 제공
- 하이버네이트의 엔티티 매니저를 직접 다루지 않고 리포지토리를 정의해 사용함으로써 스프링이 적합한 쿼리를 동적으로 생성하는 방식으로 데이터베이스 조작
- 하이버네이트에서 자주 사용되는 기능을 더 쉽게 사용할 수 있게 구현한 라이브러리
| [S.A혼구웹 ] JPA 이모저모 (0) | 2023.01.24 |
|---|---|
| [S.A혼구웹 / Test] Junit5 사용해보기 (0) | 2023.01.23 |
| [웹개발101] CORS 에러 (0) | 2023.01.16 |
| [웹개발 101] 롬복 어노테이션 정리 :: @Builder / @NoArgsConstructor / @AllArgsConstructor / @Data (0) | 2023.01.14 |