mem*_*und 3 java sql hibernate jpa
我想设置由 hibernate 自动生成的外键约束名称,因此它不是 named fk_123213241341,而是fk_user.
我正在尝试使用新的 JPA 2.1 Annotation @ForeignKey。但我可能遗漏了一些东西:
org.hibernate.AnnotationException: A Foreign key refering User from Trip has the wrong number of column. should be 2
@IdClass(UserPK.class)
class User {
@Id
String firstname;
@Id
String lastname;
//other fields omitted
}
class UserPK {
String firstname;
String lastname;
}
class Trip {
@ManyToOne
@JoinColumn(foreignKey = @ForeignKey(name = "FK_USER")
private User user;
}
Run Code Online (Sandbox Code Playgroud)
您需要使用@JoinColumns注释(注意's'):
class Trip {
@ManyToOne
@JoinColumns(foreignKey = @ForeignKey(name = "FK_USER")
private User user;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13447 次 |
| 最近记录: |