首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

Hibernate 延迟加载,lazy属性配备。以及org.hibernate.LazyInitializationException

2012-11-04 
Hibernate 延迟加载,lazy属性配置。以及org.hibernate.LazyInitializationExceptionhibernate-mappingcl

Hibernate 延迟加载,lazy属性配置。以及org.hibernate.LazyInitializationException

<hibernate-mapping>    <class name="modle.Orders" table="orders" catalog="h_01">        <id name="id" type="java.lang.Integer">            <column name="id" />            <generator class="identity" />        </id>        <many-to-one name="customers" class="modle.Customers" fetch="select" lazy="false">            <column name="customer_id"  />        </many-to-one>        <property name="orderName" type="java.lang.String">            <column name="orderName" not-null="true" />        </property>    </class></hibernate-mapping>

重要配置解释:

1、inverse 就是反向,是说这种关联关系是对对方控制的,就是many的一方。

inverse="true"
2、lazy  就是是否延迟加载。就是我在需要的时候才去加载,不需要不去加载。

在session关掉后,我们就不能再加载了。

就是常见的: org.hibernate.LazyInitializationException

这时,我们把lazy设为false。

lazy有两种配置方法:

1) 在many-to-one 或 set 中配置:

在class上的lazy只对普通属性起作用,什么set,list统统不起作用,所以set 之类的还要再写






热点排行