使一個游離對象轉變為持久化對象。例如以下代碼在session1中保存了一個Customer對象,然后在session2中更新這個Customer對象: Customer customer = new Customer(); customer.setName("Tom"); Session ...
先看寫代碼的方法: Test public void testUpdate Teacher t new Teacher t.setId 指定了主鍵也可以直接更新 t.setName zhanglaoshi Session session sessionFactory.getCurrentSession session .beginTransaction session .update t sess ...
2013-12-16 12:56 0 6722 推薦指數:
使一個游離對象轉變為持久化對象。例如以下代碼在session1中保存了一個Customer對象,然后在session2中更新這個Customer對象: Customer customer = new Customer(); customer.setName("Tom"); Session ...
Hibernate的對象有三種狀態,分別是:瞬時態(transient)、持久態(persistent)、游離態(detached) 1.瞬時態的實例可以通過調用save()、persist()或者saveOrUpdate()方法變成持久態 2.游離態的實例可以通過調用 update ...
session的方法: save(): insert 調用save方法之后,瞬時態對象可以變成持久態; update():update 將游離態對象變為持久態 saveOrUpdate():insert or update merge(): merge()方法可以完成save ...
總結: session的delete方法刪除的時候是通過主鍵進行刪除的,所以在方法1中即使設置了不對應的其它字段也是可以正常刪除數據的,如果數據庫沒有存在對應的主鍵值,會出現下面的異常 ---Batch update returned unexpected row count ...
在應用中獲取session對象: Session session= HibernateUtil.getSession(); List list=session.createCriteria(MeterUser.class).add(Restrictions.eq("name", "11 ...
saveOrUpdate()方法同時包含了save()與update()方法的功能, 如果傳入的參數是臨時對象,就調用save()方法; 如果傳入的參數是游離對象,就調用update()方法; 如果傳入的參數是持久化對象,那就直接返回。 那么,saveOrUpdate()方法如何判斷一個對象處於 ...
save肯定是添加的時候用,update修改時候用,saveorupdate是添加或修改,如果真是這樣save和update的存在就沒意義了,我們直接saveorupdate就行了。 save在添加用的時候 不會出現索引機制(即遍歷目錄 效率最高)update在修改時候要遍歷 不存在則會 ...
接上篇文章繼續學習Hibernate的Session(http://www.cnblogs.com/dreamfree/p/4111777.html) 持久化對象的狀態; 站在持久化的角度,Hibernate把對象分為4種狀態:持久化狀態、臨時狀態、游離狀態、刪除狀態。 Session ...