[java] Hibernate에서 메타데이터(Metadata) 작성하는 방법은?

Hibernate는 객체-관계 매핑(ORM) 프레임워크로서, 데이터베이스와 자바 객체 간의 매핑을 관리하는 역할을 합니다. 이때 Hibernate는 사용자가 직접 메타데이터를 작성하여 매핑 정보를 제공하게 됩니다. 메타데이터란 객체와 테이블 간의 매핑 정보를 나타내는 데이터입니다.

Hibernate에서 메타데이터를 작성하는 방법은 크게 두 가지입니다. 첫 번째는 XML 파일을 사용하는 방법이고, 두 번째는 어노테이션(annotation)을 사용하는 방법입니다.

  1. XML 파일을 사용하는 방법: ```java

위의 예제에서는 "com.example.Employee" 클래스를 "employee" 테이블과 매핑하고 있습니다. 이때 각각의 필드(name, age)와 해당하는 컬럼(name, age)을 명시하며, 타입 정보도 함께 작성합니다.

2. 어노테이션(annotation)을 사용하는 방법:
```java
@Entity
@Table(name = "employee")
public class Employee {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Column(name = "name")
    private String name;

    @Column(name = "age")
    private int age;

    // getters and setters
}

위의 예제에서는 @Entity 어노테이션을 클래스에 추가하여 Hibernate에게 해당 클래스가 엔티티임을 알려줍니다. 같은 방식으로 @Table 어노테이션을 사용하여 테이블 이름을 지정하고, @Id와 @GeneratedValue를 사용하여 기본 키를 설정합니다. @Column 어노테이션으로 필드와 컬럼 간의 매핑을 지정합니다.

위의 두 가지 방법은 Hibernate에서 메타데이터를 작성하는 가장 일반적인 방법입니다. 선택적으로 사용할 수 있으며, 개인 또는 프로젝트의 요구에 따라 적합한 방법을 선택할 수 있습니다.

참조: