Hibernate中getHibernateTemplate()下的update、delete、save操作

近來學習到Hibernate中getHibernateTemplate()下的增刪改的內容,在剛開始編寫操作的時候,被一些問題糾結了自己許久,比如,我直接update一個新傳來的對象,它卻把庫中所有對象全部覆蓋了等等,最後在後續的學習中得到了總結,故在此寫下記錄,方便後人少走彎路,也方便自己日後查閱


1.如果你只想update或者delete一條記錄的話,要將實體對象的id主鍵設置成那條記錄的id,這樣才能保證刪除的是一條且指定的記錄。

比如我現在有一個叫GeneralRecipeDetail的實體類,裏面有id和其他字段,而現在我要update指定的一條記錄,你就可以把裏面的id設置成你要update的那條記錄的id,然後在更新整個實體對象,這樣就能保證不會更新錯,delete亦是同樣。

update示例


2.在增、刪、改前,建議先查一下記錄是否存在,然後再做相應的操作

比如,我現在要保存一條記錄,首先我可以先判斷這條記錄是否存在,若存在,我就直接更新(記得設置id的值),若不存在,我就直接保存,這樣操作會更富邏輯些,當然,這是在結合自己的業務邏輯下,依據各自的條件選擇的。

建議操作


好啦,這次就寫到這裏先。
其實,Hibernate裏面封裝的這些增刪改查操作最終都是要轉化成sql語言去操作數據庫的,所以,花點時間去琢磨一下這裏面的原理,可以更有助於自己對Hibernate的理解。
以上純屬是個人見解,若寫的不好,請批評指正。

發佈了30 篇原創文章 · 獲贊 40 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章