一到多个映射的注释列未在表中创建

  • 本文关键字:创建 注释 映射 hibernate
  • 更新时间 :
  • 英文 :


酒店服务员表...

@Entity
public class HotelUser {
@Id
@Column
@GeneratedValue
private int hotelUserId;
@Column
private String hotelUserame;
@Column(name="Role")
@OneToMany(cascade=javax.persistence.CascadeType.ALL,fetch=FetchType.EAGER)
private Set<UserRole> userRole=new HashSet<UserRole>();
.
.

我的userrole table bellow ...

@Entity
public class UserRole {
@Id
@Column
@GeneratedValue
private int userRoleId;
@Column
private String userRoleName;
//constructor and geter-setter method...
}

当我运行项目时,创建了所有酒店用户中的所有列,但是userrole的列未创建,如果您给出了@Onetomany的@manytoone关系,那么它的列创建了为什么不为@Onetomany映射创建...?

onetomany注释意味着,如果在HotelUser表中创建了userRole列,则不可能拥有许多userrole。它将是一对一的映射。

当您注释许多人时,这意味着许多用户可以在DB中证明一个角色是合理的,并且在Hoteluser Table中有一列。

无论哪种情况,我都认为这不是您想要实现的目标。解决您的问题的解决方案将是我认为要选择Manytomany Realtion。

最新更新