[java] Hibernate의 다양한 어노테이션

Hibernate는 자바 객체 관계 매핑 (ORM)을 위한 강력한 프레임워크이며, 많은 어노테이션을 제공하여 데이터베이스와 매핑할 수 있습니다. 이번 포스트에서는 Hibernate에서 주로 사용되는 어노테이션에 대해 알아보겠습니다.

1. @Entity

@Entity 어노테이션은 데이터베이스 테이블과 매핑될 엔티티 클래스를 표시합니다. 이 어노테이션을 사용하여 해당 클래스가 데이터베이스에서 엔티티로 관리됨을 나타냅니다.

예시 :

@Entity
@Table(name = "employees")
public class Employee {
    // 엔티티 클래스 내용
}

2. @Id

@Id 어노테이션은 해당 필드가 엔티티의 식별자(primary key)임을 지정합니다.

예시 :

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

3. @Column

@Column 어노테이션은 데이터베이스 테이블의 컬럼과 매핑될 필드를 명시합니다.

예시 :

@Column(name = "emp_name", nullable = false)
private String name;

4. @GeneratedValue

@GeneratedValue 어노테이션은 primary key의 값을 자동으로 생성하기 위해 사용됩니다.

예시 :

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

위의 언급된 어노테이션들은 Hibernate에서 자주 사용되며, 데이터베이스와의 관계를 정의하는 데 큰 도움이 됩니다. 이 외에도 다양한 어노테이션이 존재하며, 프로젝트의 요구사항에 따라 적절한 어노테이션을 선택하여 사용할 수 있습니다.

이상으로 Hibernate의 어노테이션에 대한 간단한 소개를 마치겠습니다. 부족한 부분이 있을 수 있으니, 추가 문서를 참고하시거나 실제 프로젝트에서 경험해보시기를 권장드립니다.


참고: