1. 程式人生 > >Hibernate動態修改數據設計

Hibernate動態修改數據設計

seda gets 請求 alt ets .com 執行 ajax get

Hibernate動態修改數據

  1. dao層用可變數組
  2. xxx.hbm.xml中配置query標簽,參數name就是queryName的名稱
  3. service層中getTele沒有執行queryName的方法,只能通過getSession獲取當前session對象。通過for循環進行配置。

案例:修改密碼

1. ajax發送請求到Action中進行修改密碼。

技術分享圖片

2. ActionController層,控制層註意,盡量不要處理數據,把數據傳遞到service層去

2.1數據不要操作,傳遞數據到service再進行操作,需要用戶idpassword等數據

註意:獲取user,因為是Action

中獲取,這個是無法避免的。

技術分享圖片

3. Service處理好數據,調用Dao層,進行數據庫操作。

3.1Dao層寫一個通用的更新方法,這裏註意,通用的所以是在BaseDao裏面

技術分享圖片

技術分享圖片

在這無法使用this.getHibernateTemplate().xxx方法,queryName只能通過this.getSession()進行獲取gestNameQuery();

技術分享圖片

queryName的查詢語句是在實體類 xxx.hbm.xml中編寫的,需要十分註意,不要寫錯了。如果寫錯了,一般錯誤提示會說sessionFactory出現問題,經驗之談。

技術分享圖片

3.2Service調用的時候註意,字段順序不要傳入錯誤了。

3.3執行查詢後需要將,執行後受到影響的行數返回,判斷是否為0,如果為0需要進一步考慮是什麽情況造成的。

技術分享圖片

Hibernate動態修改數據設計