乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Hibernate中update()和merge()的區(qū)別

       為什么圖書(shū)館13 2016-06-27
      初學(xué)hibernate時(shí),對(duì)于session中的update()和merge()兩個(gè)方法,很容易搞混,覺(jué)得兩種都能用,有時(shí)候,又覺(jué)得不知道該用哪一種。
      實(shí)際上,這兩個(gè)方法,是有很大區(qū)別的
      首先,對(duì)于一個(gè)處于detatch狀態(tài)的實(shí)體對(duì)象來(lái)說(shuō),要將其中的修改,合并到數(shù)據(jù)庫(kù)中,有兩種方法,一種方式,是調(diào)用update(),另一種方式是調(diào)用merge()
      當(dāng)調(diào)用update()時(shí),首先要取保目標(biāo)session中,不包含同樣id的實(shí)體對(duì)象的引用,如果有的話(huà),會(huì)拋出異常,完成update()方法后,這個(gè)實(shí)體對(duì)象從detatch狀態(tài),轉(zhuǎn)換為persistent狀態(tài),在session提交前,后續(xù)對(duì)其的修改,都會(huì)被合并到數(shù)據(jù)庫(kù)中。
      當(dāng)調(diào)用merge()對(duì)象時(shí),無(wú)需考慮session中是否已經(jīng)包含同樣id的實(shí)體對(duì)象,如果session中沒(méi)有同樣id的實(shí)體對(duì)象,hibernate會(huì)通過(guò)select語(yǔ)句,從數(shù)據(jù)庫(kù)中查詢(xún)出對(duì)應(yīng)對(duì)象,如果數(shù)據(jù)庫(kù)中沒(méi)有對(duì)應(yīng)對(duì)象,就新建一個(gè)。同時(shí),完成merge()操作后,會(huì)返回?cái)?shù)據(jù)庫(kù)中對(duì)應(yīng)的persistent狀態(tài)對(duì)象,而原有的,作為參數(shù)傳入的實(shí)體對(duì)象,仍然是detatch狀態(tài),后續(xù)代碼對(duì)其的修改,無(wú)法合并到數(shù)據(jù)庫(kù)中。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多