找不到Hibernate数据库列 - 在注释中定义

时间:2016-01-11 21:37:33

标签: java hibernate

我正在通过hibernate获得一个我无法弄清楚的异常。

  

org.hibernate.AnnotationException:无法在表user_roles上创建唯一键约束(role,username):database column' role'未找到。确保使用正确的列名,这取决于使用的命名策略(它可能与实体中的属性名称不同,特别是对于关系类型)

我已经定义了列的名称" role"有了注释,我在这里遗漏了什么吗?

任何帮助表示感谢。

  ...

@Entity
@Table(name = "user_roles", uniqueConstraints = @UniqueConstraint(columnNames =
{ "role", "username" }) )
public class UserRole
{

  @Id
  @GeneratedValue(strategy = IDENTITY)
  @Column(name = "user_role_id", unique = true, nullable = false)
  private Integer userRoleId;

  @ManyToOne(fetch = FetchType.LAZY)
  @JoinColumn(name = "username", nullable = false)
  private User user;

  @Column(name = "role", nullable = false, length = 45)
  private String role;

  ...
}

0 个答案:

没有答案