3. Entity

JPA (Java Persistence API)에서 엔티티(Entity)는 데이터베이스의 테이블과 매핑되는 자바 객체를 의미합니다. 엔티티는 JPA를 사용하여 데이터베이스와 상호작용하는 데 사용되며, 영속성 컨텍스트(Persistence Context)에서 관리됩니다.

JPA에서 엔티티는 다음과 같은 특징을 가지고 있습니다

1. @Entity 어노테이션

엔티티 클래스는 @Entity 어노테이션으로 표시됩니다. 이 어노테이션을 통해 JPA에게 해당 클래스가 데이터베이스 테이블과 매핑되는 엔티티임을 알려줍니다.

2. 식별자 (Identifier)

엔티티는 고유한 식별자를 가져야 합니다. 주로 엔티티 클래스의 필드 중 하나가 식별자로 지정되며, @Id 어노테이션을 사용하여 표시됩니다. 식별자는 데이터베이스 테이블의 기본 키와 매핑됩니다.

3. 필드 및 속성 (Fields & Properties)

엔티티 클래스는 데이터베이스 테이블의 열에 해당하는 필드 또는 속성을 가질 수 있습니다. 필드와 속성은 데이터베이스 테이블의 컬럼과 매핑되며, JPA는 엔티티의 필드와 데이터베이스 컬럼 간의 매핑을 처리합니다.

4. 관계 (Relationships)

엔티티 간에는 관계를 설정할 수 있습니다. @OneToOne, @OneToMany, @ManyToOne, @ManyToMany 등의 어노테이션을 사용하여 엔티티 간의 관계를 표현할 수 있습니다. 이를 통해 데이터베이스 테이블 간의 관계를 자바 객체로 표현할 수 있습니다. (자세히보기)

5. 영속성 컨텍스트 관리

JPA에서 엔티티는 영속성 컨텍스트에 의해 관리됩니다. 영속성 컨텍스트는 엔티티의 상태를 추적하고, 엔티티의 변경 사항을 데이터베이스에 자동으로 반영합니다.

엔티티는 JPA를 사용하여 데이터베이스와 상호작용하는 데 중요한 역할을 합니다. 엔티티는 객체 지향 프로그래밍의 개념을 데이터베이스와 결합하여 유연하고 효율적인 데이터 조작을 가능하게 해줍니다. JPA에서 엔티티는 데이터베이스의 테이블과 일치하며, 데이터베이스의 데이터를 객체로 쉽게 다룰 수 있도록 도와줍니다.

Last updated