강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

tmdgk4902님의 프로필 이미지
tmdgk4902

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

실전 예제 1 - 요구사항 분석과 기본 매핑

@Entity와 @Table 질문드립니다

작성

·

253

0

지금 강의 내용과는 조금 다르긴 합니다만 이해가 잘 안가서요

@Entity를 붙이면 해당 객체는 JPA가 관리하는게 되고,

@Table을 붙이면 해당 객체의 필드를 바탕으로 db에 자동으로 테이블이 만들어지는 건가요? 그리고 만들어진 테이블이 엔티티와 매핑되는게 맞을까요?

@Table의 name속성을 지정하지 않으면 테이블이 만들어질 때 이름이 엔티와 똑같이 되는거고, 지정해주면 해당 이름으로 테이블이 만들어져서 엔티티와 매핑이 되는건지 궁금합니다 

답변 1

0

안녕하세요, tmdgk4902 님. 공식 서포터즈 codesweaver 입니다.
.
@Entity 어노테이션을 붙이고 ddl-auto 설정이 create-drop 등으로 설정되어있다면 어플리케이션 실행 시 테이블을 생성합니다. 테이블의 컬럼은 필드를 기준으로 생성합니다.

.

@Table 어노테이션은 테이블을 생성할 때 제약조건을 걸거나 (uniqueConstraint) 

매핑할 테이블의 이름을 지정하는 등 (name)의 옵션을 추가 할 수 있습니다.

말씀하신것처럼 테이블 이름을 별도로 지정하지 않을 경우 엔티티 클래스의 이름을 기반으로 테이블을 생성합니다.
.
감사합니다.

tmdgk4902님의 프로필 이미지
tmdgk4902

작성한 질문수

질문하기