set映射简单映射和map差不多区别配置文件
<hibernate-mapping>
<class name="com.shengsiyuan.hibernate.Team" table="team">
<id name="id" column="id" type="string">
<generator class="uuid"></generator>
</id>
<property name="teamName" column="teamName" type="string"></property>
<set name="students" table="student">
<key column="team_id"></key>
<element column="name" type="string"></element>
</set>
</class>
</hibernate-mapping>
不会的参考map映射
list映射
Student实体类和映射都不变和map也是一样的;
team实体类
public class Team {
private int id;
private String name;
private List<Student> students;
team映射文件
<hibernate-mapping>
<class name="com.wfg.map2.Team" table="team" >
<id name="id" type="integer">
<column name="ID" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" length="15" />
</property>
<list name="students" table="student" cascade="all">
<key column="team_id"></key>
<index column="index_"></index>
<one-to-many class="com.wfg.map2.Student"/>
</list>
</class>
</hibernate-mapping>
测试代码
Team team = new Team();
team.setName("team1");
team.setStudents(new ArrayList<Student>());
Student stu = new Student();
stu.setName("张三");
stu.setStudendesc("hello");
stu.setTeam(team);
stu.setCard_id("200");
Student stu2 = new Student();
stu2.setName("李四");
stu2.setCard_id("201");
stu2.setStudendesc("word");
stu2.setTeam(team);
team.getStudents().add(stu);
team.getStudents().add(stu2);
session.save(team);
结果
源码下载
链接:http://pan.baidu.com/s/1nuUy1g1 密码:0zsr