Replies: 2 comments
-
|
JPA(Java Persistence API)는 자바 애플리케이션에서 객체와 데이터베이스를 매핑(O/R Mapping) 하여, 객체 지향적인 방식으로 데이터베이스 작업을 할 수 있게 해주는 자바 표준 ORM 프레임워크입니다. JPA의 동작 방식은 크게 다음과 같은 흐름으로 이해할 수 있습니다: ✅ 1. Entity 객체 정의
✅ 2. EntityManager 사용
✅ 3. 영속성 컨텍스트(Persistence Context)
▶ 동작 흐름 예시
✅ 4. 주요 동작 원리
✅ 5. 트랜잭션과 커밋
✅ 요약 흐름 정리
|
Beta Was this translation helpful? Give feedback.
-
|
"JPA는 Java 진영의 ORM 기술로, 객체와 관계형 데이터베이스 사이의 매핑을 자동화하여 개발자가 SQL에 직접 의존하지 않고도 데이터를 처리할 수 있도록 도와줍니다. 동작 방식은 크게 'Entity 클래스', '영속성 컨텍스트', 'EntityManager'의 세 가지 핵심 요소로 설명할 수 있습니다. 첫 번째로, JPA에서는 데이터베이스 테이블을 자바 클래스(Entity)로 매핑하고, 이 클래스는 @entity 어노테이션으로 정의합니다. 두 번째는 영속성 컨텍스트입니다. 이는 일종의 1차 캐시로, JPA는 이곳에 엔티티를 보관하면서 동일 트랜잭션 내에서는 같은 객체를 재사용하고, 변경 사항을 추적할 수 있게 해줍니다. 이를 통해 불필요한 쿼리를 줄이고, 객체의 상태 변화를 자동으로 감지해 DB에 반영할 수 있습니다. 이 기능을 '더티 체킹'이라고 부릅니다. 세 번째는 EntityManager입니다. JPA의 핵심 API로, 이를 통해 persist(), find(), remove() 등의 메서드로 엔티티를 저장하고 조회하며 삭제할 수 있습니다. 모든 데이터 변경 작업은 트랜잭션 안에서 이루어지며, 커밋 시점에 DB에 반영됩니다. 이러한 방식 덕분에 JPA는 객체 지향적인 개발을 가능하게 하고, SQL에 대한 의존도를 줄이면서도 성능 최적화를 유연하게 처리할 수 있다는 장점이 있습니다."** |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
🤔
Beta Was this translation helpful? Give feedback.
All reactions