JPA [Java Persistence API]
ㅡ 자바 플랫폼 SE, EE를 사용하는 응용 프로그램에서 관계형 DB의 관리를 담당하는 Java API
ㅡ 자바 ORM 기술에 대한 표준 명세
*API는 정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘입니다. 예를 들어, 기상청의 소프트웨어 시스템에는 일일 기상 데이터가 들어 있습니다. 휴대폰의 날씨 앱은 API를 통해 이 시스템과 ‘대화’하여 휴대폰에 매일 최신 날씨 정보를 표시합니다.
출처 : https://aws.amazon.com/ko/what-is/api/
*Persistence (지속성)
ㅡ 데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터의 특성
ㅡ 지속성을 갖지 않는 데이터는 메모리에만 존재하기 때문에 프로그램을 종료하면 모두 상실
Object Persistence (영구적인 객체)
ㅡ 메모리 상의 데이터를 DMBS에 영구적으로 저장하여 지속성 부여
ㅡ 데이터를 DB에 저장하는 방법
1) JDBC
2) Spring JDBC
3) Persistence Framewrok (Mybatis, JPA..)
Persistence Layer
ㅡ 프로그램의 아키텍처에서, 데이터에 지속성을 부여해주는 계층
ㅡ 과거에는 JDBC를 이용하여 직접 구현하였지만, 최근엔 Persistence Framework를 이용한 개발이 추세
Persistence Framework
ㅡ JDBC의 복잡한 프로그래밍 없이 간단한 로직만으로 DB와 연동되는 시스템을 빠르게 개발
ORM [Object-Relational Mapping]
ㅡ class 및 instance와 관계형 DB의 table 및 entity를 자동으로 매핑
→ 객체 모델과 관계형 모델 간에 불일치를 ORM을 통해 객체 모델 간의 관계를 SQL로 자동 생성
JPA 의존성 주입
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
'Spring' 카테고리의 다른 글
Entity, DTO, VO, Controller, Service, Repository, GET, POST 등 (0) | 2023.03.09 |
---|---|
Repository (1) | 2023.03.06 |
Service (0) | 2023.03.06 |
Controller / DTO (0) | 2023.03.05 |
Spring 개발환경 세팅 (이클립스, VSCode) / Build, Gradle (2) | 2023.03.03 |
댓글