728x90
JPA
1. 많은 쿼리를 짜다보니 객체 모델은 데이터 중심 모델로 변해갔다.
- 객체와 관계형 데이터베이스 간의 차이를 중간에서 해결해주는 ORP 이것이 JPA를 사용하는 가장 큰 이유이다.
- JPA를 사용하는 개발자는 SQL을 직접 장성하는 것이 아니라 어떤 SQL이 실행될지 생각만 하면된다.
- CRUD을 작성할 필요가 없고, 조회된 결과를 객체로 매핑하는 작업도 대부분 자동으로 처리해준다. 가장 큰 장점으론 객체중심으로 개발하니 생산성과 유지보수가 확연히 좋아졌다.
- 데이터베이스에 데이터를 관리하려면 SQl을 사용해야한다. 자바로 작성한 애플리케이션은 JDBC API를 사용해서 SQL을 데이터베이스에 전달한다.
애플리케이션에서 SQL을 직접 다룰 떄 발생하는 문제점은
- 진정한 의미의 계층 분할이 어렵다
- 엔티티를 신뢰할 수 없다.
- SQLdㅔ 의존적인 개발을 피하기 어렵다
- SQL을 직접 다루면 청므 실행하는 SQL에 따라 객체 그래프를 어디까지 탐색할 수 있는지 정해진다.
- 이것은 개발자에게 너무 큰 제약이다
- 비즈니스 로직에 따라 사용하는 객체 그래프가 다른데 언제끊어질지 모를 객체 그래프를 함부로 탐색할 수 는 없기 떄문이다.
JPA는 연관된 객체를 신뢰하고 마음껏 조회 할 수 있다.
- *** 이 기능은 실제 객체를 사용하는 시점까지 데이터베이스 조회를 미룬다고해서 지연 로딩 이라고한다.
정리 :객체 모델과 데베모델은 지향하는 패러다임이 서로 다르다.
정교한 객체 모델링을 할수록 패러다임의 불일치 문제가 더 커진다.
그것을 극복하기 위한 결과물이 JPA다.
ORM 프레임워크가 애플리케이션을 객체지향적으로 개발할 수 있도록 도와주긴하지만 결국 관계형 데이터베이스에 저장된다. 그러므로
SQL도 잘알아햔다. ORM프레임워크를 사용할 때 가장 중요한일은 객체와 테이블을 매핑하는 것이다. 매핑을올바르게 하려면 객체와 관계형 데이터베이스 양쪽을 모두
이해해야 한다.
95페이지 까지의 기록
728x90
'개발 공부 > 개발독서' 카테고리의 다른 글
| 그림으로 배우는 Http&NewWork Basic (0) | 2024.07.17 |
|---|---|
| 자바 ORM 표준 프로그래밍 JPA (0) | 2024.07.12 |
| 도메인 주도개발시작하기 DDD핵심개념정리부터 구현까지 (0) | 2024.07.05 |
| 객체지향사실과오해 완독 (0) | 2024.06.20 |
| 객체지향의 사실과 오해 5/31 159 page (1) | 2024.05.31 |