본문 바로가기

카테고리 없음

JPA - 아키텍쳐

JPA Architecture


Java Persistence API 비지니스 엔티티를 관계형 엔티티로 저장하는 소스이다.

이것은 Plain Old Java Object(POJO) 어떻게 정의하고 관계가 있는 엔티티를 관리하는 방법을 보여준다.


Class Level Architecture

이미지는 클래스 레벨의 JPA 보여준다.

아래 표는 아키텍쳐에 표시된 장치를 설명한다.

EntityManagerFactory : EntityManager 팩토리 클래스이다. 여러개의 EntityManager 인스턴스를 생성하고 관리한다.

EntityManager : 이것은 인터페이스이고 객체에 대한 지속성 작업을 관리한다. 이것은 쿼리 인스턴스의 팩토리처럼 작동한다.

Entity : 엔티티는 데이터베이스 레코드에 저장되는 지속성 객체이다.

EntityTransaction : EntityManager 일대일관계이다. EntityManager 작업들은 엔티티 트랜잭션 클래스에 의해 관리된다.

Persistence : 클래스는 EntityManagerFactory 인스턴스를 얻는 스태틱 메소드를 포함한다.

Query : 인터페이스는 JPA 벤더가 원하는 관계형 객체들을 얻기 위해 구현된다.



클래스와 인터페이스는 엔티티를 데이터베이스 레코드로 저장하는데 사용된다.

이들은 프로그래머가 데이터베이스에 저장하기 위해 코드를 작성하는 노력을 줄여주어, 그들로 하여금 중요한 활동(클래스와 데이터베이스 테이블을 매핑하는 코드작성) 집중할 있게 해준다.


 JPA Class Relationships

아키텍쳐에서 클래스와 인터페이스의 관계는 javax.persistence 패키지에 있다.

아래 다이어그램은 그들의 관계를 보여준다.

엔티티매니저팩토리와 엔티티매니저는 일대다 관계이다. (팩토리기준에서)

엔티티매니저와 엔티티 트랜잭션은 일대일 관계이다. 엔티티매니저의 작업에는 엔티티 트랜잭션 인스턴스이다.

엔티티매니저와 쿼리는 일대다 관계이다. 많은 수의 쿼리를 하나의 엔티티매니저 인스턴스에서 실행할 있다.

엔티티매니저와 엔티티는 일대다관계이다. 하나의 엔티티매니저 인스턴스는 여러개의 엔티티를 관리 할수 있다.



원문https://www.tutorialspoint.com/jpa/jpa_introduction.htm

(오역이 있을수 있으니 발견 댓글달아주세요!)