在一对多关联关系中
annotation需要加入@joinColumn指定外键字段名,否则hibernate自动生成表时将会默认生成三个表,多出了一个中间表。
而在多对一关系中则没有这个问题。
一对多多对一双向关联中则需要指定@mappBy(name="xxx"),此时@joinCoumn只起改字段名的作用,可以不加,默认生成XXXX_id,若要加最好只能加在manyToOne方,否者会有两条外键约束。
若什么没加,结果如一对多。
@OneToMany
@JoinColumn(name="t_groupid")
public Set<User> getUsers() {
return users;
}
public void setUsers(Set<User> users) {
this.users = users;
}
annotation需要加入@joinColumn指定外键字段名,否则hibernate自动生成表时将会默认生成三个表,多出了一个中间表。
而在多对一关系中则没有这个问题。
一对多多对一双向关联中则需要指定@mappBy(name="xxx"),此时@joinCoumn只起改字段名的作用,可以不加,默认生成XXXX_id,若要加最好只能加在manyToOne方,否者会有两条外键约束。
若什么没加,结果如一对多。