JPA 관계에서 열의 맞춤형 이름 지정
-
03-07-2019 - |
문제
최대 절전 모드를 사용하여 JPA와 관계를 맺을 때 끔찍한 길고 어 크워드 컬럼 이름이 생성됩니다.
예를 들어. 나는 다음이있다 actionPlan_actionPlanPK
, 이는 열을 의미합니다 actionPlan
가리키는 FK입니다 actionPlanPK
.
DB에서 조금 더 깔끔하게 보이게하려면, 내가 직접 이름을 줄 수 있다면 원하는 것이 좋습니다.
JPA에서 가능합니까?
해결책
예. 기본 이름에 만족하지 않는 경우 열에 대한 자신의 이름을 지정할 수 있습니다. 예를 들어 ActionPlan을 참조하여 클래스에서 다음을 지정할 수 있습니다.
@ManyToOne
@JoinColumn(name="actionplanId")
public ActionPlan getActionPlan(){
}
따라서 열 이름은 "ActionPlanid"입니다.
다른 팁
이 기능은 JPA 사양의 일부이며 주석에서 많은 데이터베이스 구조의 이름 지정을 허용합니다. 여기에는 다음이 포함됩니다.
다음과 같이 테이블 이름 지정 :
@Entity
@Table(name="better_table_name")
public class MyConvolutedClassName {
}
다음과 같이 열의 이름 지정 :
@Column(name="better_column_name")
private Date myConvolutedDateColumn;
관계의 일부인 열 이름 :
@ManyToOne
@JoinColumn(name="better_join_column_name")
private ClassName otherModelClass;
EJB 3.0 주석 (JPA 포함)에 대한 훌륭한 (최신 정보) 치트 시트가 있습니다. http://www.fnogol.de/media/ejb3.0-anno-cheat-1.2.pdf.
제휴하지 않습니다 StackOverflow