一、多对一关系(annotation 方式)
例如,一个人有多个梦想,如果外键加在person表上,出现冗余;一般多对一关系,外键加在多得一方。代码举例:
例如:组与成员的关系。
1.group类
@entity
public class group{
public int id;
public string name;
@id
@generatedvalue
public int getid(){
}
.....
}
2.user类
@entity
public class user{
public int id;
public string name;
public group group;
@manytoone
public group getgroup(){
}
@id
@generatedvalue
public int getid(){
}
.....
}
二、xml方式实现
1.group的xml
<hibernate-mapping><class name="com.bjsxt.hibernate.Group" table="t_group">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
</class>
</hibernate-mapping>
2.user的xml
<hibernate-mapping>
<class name="com.bjsxt.hibernate.User" table="t_user">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<many-to-one name="group" column="groupId" />
</class>
</hibernate-mapping>