Hibernate 小结
生活随笔
收集整理的這篇文章主要介紹了
Hibernate 小结
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在控制臺顯示HQL語句
<property name="show_sql">true</property>
----------------------------------------------------------
hibernate里面有四個參數(shù)比較重要
cascade 有四個取值:none all save-update delete
------------------------------
1 第一種查詢
from Cat cat where cat.mate.name like "kit%"
相當(dāng)于:
select * from cat_table as table1 cat_table as table2 where table1.mate =
table2.id and table1.name like "kit%"
from Foo foo where foo.bar.baz.customer.address.city like"guangzhou%"
四表連接查詢
-------------------------------------------------------
2 第二種查詢
//String hql="select u from po.Users u,po.Useradd ua where u=ua.users and ua.address='beijing'";
//String hql="select u from po.Users u,po.Useradd ua where??ua.address='beijing'";
----------------------------
3 fetch的用法
lazy="false" fetch="select" 執(zhí)行多條hql語句,延遲加載不起作用。
lazy="true" fetch="select" 執(zhí)行多條hql語句,延遲加載起作用。
lazy="true" fetch="join" 寫在一的方面,對get方法起作用,只執(zhí)行一條查詢語句。對hql語句不起作用。
可以在hql語句中強(qiáng)制抓取
from Users u join fetch u.useradds
//注意:這種強(qiáng)行抓取,如果以子表類條件返回主表對象,有幾個子表類對象會返回多少個主表類對象。
//可以采用Set集合保存對象或做程序去掉重復(fù)項的方式處理。
但可以在hql語句種增加String hql="from Users u join fetch u.useradds";即使設(shè)置延遲加載
也可以把子表數(shù)據(jù)強(qiáng)行取出來.
結(jié)論: 1 HQL代碼 > fetch(配置) > lazy (配置)
???????? 注意:如果查詢涉及兩個表,已經(jīng)自動加載了
?????? 2 fetch 和 lazy 主要是用來級聯(lián)查詢的,?? 而 cascade 和 inverse 主要是用來級聯(lián)插入和修改的
?????? 3 默認(rèn) lazy="true"
?????? 4 cascade用來操作主表的時候影響到子表的類。
?????? 5 老爸可以有多個孩子,一個孩子不能有多個老爸,而且老爸說的算, 孩子圍著老爸轉(zhuǎn)。
????????????????所以Photos老爸要有權(quán)力所以 cascade 這個關(guān)鍵子都是送給老爸的, 也就是級聯(lián)更新,
?????????????? 老爸改姓了,兒子也得跟著改,呵呵。“不然,就沒有零花錢咯”。
????????????????而Picture兒子整體挨罵,但是還是要維護(hù)父子之間良好的關(guān)系,對老爸百依百順,所
?????????????? 以老爸就說,兒子,“關(guān)系,由你來維護(hù)(inverse="true") ,不然就不給零花錢。呵。”。
?????????????? <set name="pictures" inverse="true" cascade="all">
????????????????????<key>
?????????????????????? <column name="photosid" not-null="true" />
????????????????????</key>
???????????????? <one-to-many class="girl.domain.Picture" />
???????????? </set>
總結(jié)
以上是生活随笔為你收集整理的Hibernate 小结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring 杂谈.
- 下一篇: 什么是治愈系甜点的制作方法?