自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Hibernate Session的delete()方法

開(kāi)發(fā) 后端
本文介紹Hibernate Session的delete()方法。delete()方法用于從數(shù)據(jù)庫(kù)中刪除與Java對(duì)象對(duì)應(yīng)的記錄。對(duì)應(yīng)游離對(duì)象和持久化對(duì)象,delete語(yǔ)句會(huì)做出不同的反應(yīng)。

delete()方法用于從數(shù)據(jù)庫(kù)中刪除與Java對(duì)象對(duì)應(yīng)的記錄。如果傳入的參數(shù)是持久化對(duì)象,Session就計(jì)劃執(zhí)行一個(gè)delete語(yǔ)句。如果傳入的參數(shù)是游離對(duì)象,先使游離對(duì)象被Session關(guān)聯(lián),使它變?yōu)槌志没瘜?duì)象,然后計(jì)劃執(zhí)行一個(gè)delete語(yǔ)句。值得注意的是,Session只有在清理緩存的時(shí)候的才執(zhí)行delete語(yǔ)句。此外,只有當(dāng)調(diào)用Session的close()方法時(shí),才會(huì)從Session的緩存中刪除該對(duì)象。

例如以下代碼先加載一個(gè)持久化對(duì)象,然后通過(guò)delete()方法將它刪除:

  1. Session session1 = sessionFactory.openSession();  
  2.  
  3. Transaction tx1 = session1.beginTransaction();  
  4.  
  5. // 先加載一個(gè)持久化對(duì)象  
  6.  
  7. Customer customer = (Customer)session.get(Customer.class, new Long(1));  
  8.  
  9. session.delete(customer); // 計(jì)劃執(zhí)行一個(gè)delete語(yǔ)句  
  10.  
  11. txt1.commit(); // 清理緩存,執(zhí)行delete語(yǔ)句  
  12.  
  13. session.close();子// 從緩存中刪除Customer對(duì)象  

以下代碼直接通過(guò)delete()方法刪除一個(gè)游離對(duì)象:

  1. Session session2 = sessionFactory.openSession();  
  2.  
  3. Transaction tx2 = session1.beginTransaction();  
  4.  
  5. // 假定customer是一個(gè)游離對(duì)象,先使它被Session關(guān)聯(lián),使它變?yōu)槌志没瘜?duì)象,  
  6.  
  7. // 然后計(jì)劃執(zhí)行一個(gè)delete語(yǔ)句  
  8.  
  9. session2.delete(customer);  
  10.  
  11. tx2.commit(); // 清理緩存,執(zhí)行delete語(yǔ)句  
  12.  
  13. session2.close(); // 從緩存中刪除customer對(duì)象  

如果希望刪除多個(gè)對(duì)象,可以使用另一種重載形式的delete()方法:

  1. session.delete("from Customer as c where c.id>8"); 

以上delete()方法的參數(shù)為HQL查詢語(yǔ)句,delete()方法將從數(shù)據(jù)庫(kù)中刪除所有滿足查詢條件的記錄。

【編輯推薦】

  1. Hibernate創(chuàng)建命名策略
  2. Hibernate的unsaved-value
  3. Hibernate中g(shù)et和load方法的區(qū)別
  4. Hibernate Session的saveOrUpdate()方法
  5. Hibernate區(qū)分不同對(duì)象的方法

 

責(zé)任編輯:book05 來(lái)源: 百度博客
相關(guān)推薦

2009-06-26 16:33:09

saveOrUpdatHibernate

2009-06-12 16:00:13

Session方法Hibernate

2009-06-18 13:42:48

Hibernate s

2009-09-29 16:04:29

Hibernate S

2009-09-24 17:24:20

Hibernate S

2009-09-25 10:53:40

Hibernate S

2009-09-22 10:09:21

Hibernate S

2009-09-25 09:46:03

Hibernate s

2009-09-23 17:03:08

Hibernate S

2009-09-25 13:51:13

Hibernate S

2009-09-23 17:18:16

Hibernate S

2009-09-24 16:13:05

Hibernate S

2009-09-27 14:53:38

Hibernate S

2009-09-25 11:23:13

Hibernate S

2009-09-23 11:37:31

Hibernate S

2009-09-25 15:34:42

Hibernate關(guān)聯(lián)

2009-06-30 16:41:12

Hibernate的事

2009-09-27 14:41:05

Hibernate I

2009-09-23 09:47:23

Hibernate e

2009-06-12 15:09:01

Hibernate優(yōu)化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)