Hibernate多对一映射单向关联
比如学生和学校。多个学生都对应一个学校。这里说的是从学生到学校的多对一单向关联。
public class Student{private Long id;private String name;private School school;....getter setter}看看School.hbm.xml
<hibernate-mapping><class name="School" table="school"><id name="id" type="long" column="ID"><generator class="increment"/></id><property name="name" type="String" column="name"/></class></hibernate-mapping>
Student.hbm.xml的其他字段属性和School类似,但是它的school字段,怎么配置呢?看看Student.hbm.xml里的配置
<many-to-one name="school"column="school_id"class="School"lazy="false"/>
name设定待映射的持久化类的属性名字
column设置了student表的对应的外键
lazy如果为proxy,表示对关联的School对象使用延迟检索策略并使用代理,这是默认值。如果为false,就意味着HIbernate从数据库中加载School对象时,还会立即自动加载于它关联的School对象。