一对多配置
【1】班级和学生模型
--->班级可容纳多个学生
--->学生只能属于一个班级
【2】一对多配置中的关系维护(inverse)
--->一端放弃关系的维护
--->多端进行关系维护。
inverse默认值false,表示不放弃关系的维护。
inverse="true"配置在那一端,表示那一端放弃关系的维护(交由hibernate内部进行维护),由另一端进行关系维护。
班级的ClassRoom.hbm.xml的配置文件
1 <?xml version="1.0"?> 2 <!DOCTYPE hibernate-mapping PUBLIC 3 "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 4 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 5 <hibernate-mapping 6 package="com.bjsxt.shangxiaofei.po"><!-- 实体类包名,如果此处不加package属性,下面所有的class要写全路径:报名+类名 --> 7 8 <class name="ClassRoom" table="t_classroom"> 9 10 11 <!-- 主键递增 --> 12 <id name="id" column="id"> 13 <generator class="native"></generator> 14 </id> 15 16 <!-- 班级名字 --> 17 <property name="name" column="name"></property> 18 19 <!-- 班级的学生,班级对学生 一对多的关系 一端放弃关系的维护,多端进行维护,在set中inverse="true"--> 20 <set name="students" inverse="true"> 21 <!-- 将班级的主键id在学生表中生成外键 --> 22 <key column="class_id"></key> 23 <one-to-many class="Student" /> 24 </set> 25 26 27 </class> 28 29 </hibernate-mapping>