Posted on 2009-02-16 19:44
啥都寫點 閱讀(143)
評論(0) 編輯 收藏 所屬分類:
J2EE
在Hibernate 3中實際上有一種機制叫做延遲加載
所謂的延遲加載就是指當程序用到數據的時候才進行加載
Hibernate中提供的delete方法最大的缺點就是必須先把數據查詢出來之后 ,在進行刪除,這樣才能一起刪除掉,最好的做法是將數據按ID進行刪除àHQL
舉例(各種容器的hbm文件的寫法):
Set:
<hibernate-mapping>
<class
name="org.lxh.hibernate.demo01.pojo.Person"
table="person">
<id
name="id" type="java.lang.Integer">
<column
name="id" />
<generator
class="native"></generator>
</id>
<property
name="name" type="java.lang.String">
<column
name="name" length="20" />
</property>
<set
name="emails" table="emails" lazy="false">
<key
column="id"></key>
<element
type="java.lang.String"
column="address"></element>
</set>
</class>
</hibernate-mapping>
List:
<hibernate-mapping>
<class
name="org.lxh.hibernate.demo02.pojo.Person"
table="person">
<id
name="id" type="java.lang.Integer">
<column
name="id" />
<generator
class="native"></generator>
</id>
<property
name="name" type="java.lang.String">
<column
name="name" length="20" />
</property>
<list
name="books" table="books">
<key
column="id"></key>
<index
column="posit"></index>
<element
type="java.lang.String" column="title"></element>
</list>
</class>
</hibernate-mapping>
Map:
<hibernate-mapping>
<class
name="org.lxh.hibernate.demo03.pojo.Person"
table="person">
<id
name="id" type="java.lang.Integer">
<column
name="id" />
<generator
class="native"></generator>
</id>
<property
name="name" type="java.lang.String">
<column
name="name" length="20" />
</property>
<map
name="phone" table="phone">
<key
column="id"></key>
<index
type="java.lang.String" column="name"></index>
<element
type="java.lang.String"
column="numbers"></element>
</map>
</class>
</hibernate-mapping>
--
學海無涯