4.1 @Entity

JPA 를 사용해서 테이블과 매핑할 클래스는 @Entity 어노테이션을 필수로 붙여야 한다. @Entity 가 붙은 클래스는 JPA 가 관리하는 것으로, 엔티티라 부른다.

4.2 @Table

@Table 은 엔티티와 매핑할 테이블을 지정한다. 생략하면 매핑한 엔티티 이름을 테이블 이름으로 사용한다.

4.4 데이터베이스 스키마 자동 생성

JPA 는 데이터베이스 스키마를 자동으로 생성하는 기능을 지원한다. 클래스의 매핑 정보를 보면 어떤 테이블에 어떤 컬럼을 사용하는지 알 수 있다. JPA 는 이 매핑 정보와 데이터베이스 방언을 사용해서 데이터베이스 스키마를 생성한다.

<property name="hibernate.hbm2ddl.auto" value="create">

create 속성값으로 설정하면 애플리케이션 실행 시점에 데이터베이스 테이블을 자동으로 생성한다. 참고로 hibernate.show_sql 속성을 true 로 설정하면 콘솔에 실행되는 테이블 생성 DDL 을 출력할 수 있다.

하지만 스키마 자동 생성이 만든 DDL 은 운영 환경에서 사용할만큼 완벽하지는 않으므로 개발 환경에서 사용하거나 매핑을 어떻게 해야 하는지 참고하는 정도로만 사용하는 것이 좋다.