@Entity의 name 속성에 대해
584
작성한 질문수 44
1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit#heading=h.w2tomwsznga7)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://docs.google.com/document/d/1xCQKit-1V6l6ObeCe49St33RHPzLF_P_c3o7aSDTKs0/edit#heading=h.7dhnp46ven0v)
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
@Entity의 name 속성과 @Table의 name 속성에 대해서 질문이 있습니다. @entity의 name 속성은 JPA에서 사용할 엔티티 이름이고, @Table 의 name 속성은 엔티티와 매핑할 테이블 명을 지정해준다고 하는데, @Entity의 name 속성에 대한 이해가 좀 부족한거 같습니다.. @Entity 의 name 속성과 @Table 의 name 속성을 다르게 했을 때 데이터베이스의 table명은 @Table의 name 속성에서 지정한대로 설정되는데, 혹시 이렇게 다르게 설정하면 문제가 생기는 것인지요.. JPA에서 사용한다는건 정확히 무슨 의미인지 잘 모르겠습니다..
답변 1
3
안녕하세요. 신동훈님, 공식 서포터즈 OMG입니다.
@Entity api에는 다음과 같은 설명이 있습니다.
중간에서부터 보면," 쿼리에서 엔티티의 이름을 참조하기 위해 사용이 되며 jpql에서 예약어가 아니어야 한다"
올라온 연관강의를 보니 아직 강의 초반부이신 것 같습니다. 강의 후반부에 JPQL에 대해서 학습하는데 JPQL에서의 엔티티이름을 엔티티의 기본이름이 아닌 지정한 이름으로 사용하고자 할 때 사용합니다.
제 경험 상 @Table의 경우는 종종 name을 지정하여 사용하는 것들은 보았지만(테이블의 이름이 특정 DB의 키워드로 되어 있어서 기본으로 만들어주는 테이블의 이름을 사용하면 오류가 발생하는 경우 혹은 그러한 상황에 미리 대처하기 위해 바꾸는 경우) @Entity의 이름을 특별히 지정하지 않고 기본으로 생성해준 이름을 사용한 것들만 보았습니다.
바꾸어 사용할 이유가 없다면 기본으로 생성되는 Entity의 이름을 사용하실 것을 권장드립니다.
감사합니다.
실무 조언 관련 질문입니다.
0
41
1
H2데이터베이스 파일 생성
0
50
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
0
49
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
47
1
JPQL 메소드와 락
0
50
1
Delivery @OneToOne
0
57
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
88
2
UnsupportedOperationException 발생
0
82
3
H2 Database 연결이 안됩니다.
0
87
2
연관관계 매핑 질문드립니다.
0
81
2
h2데이터베이스 실행오류
0
105
2
persistence.xml
0
103
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
77
1
영속성 컨텍스트
0
62
1
JPA 프록시
0
89
1
Native Query와 MyBatis
0
63
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
82
1
임베디드 타입 예시 코드 관련 질문
0
112
3
명시적 조인에서 별칭을 주면 왜 객체에 접근할 수 있나요
0
90
3
인텔리제이 패키지 커서 단축키 질문
0
106
2
혹시 현재는 ID 데이터 타입이 String이면 안되나요?
0
135
1
양방향 연관관계 시 연관관계 주인을 설정하는 이유
0
68
1
임베디드 타입과 MappedSuperClass의 차이점이 궁금합니다.
0
95
1
데이터베이스가 초기화되는 것 같아요
1
176
2





