2015-05-27 32 views
1

我使用mysql + spring + hibernate。hibernate在保存時創建新行並不更新

當我執行下面的代碼創建一個新的行:

sessionFactory.getCurrentSession() 
     .save(configTable); 

但是下面的更新

sessionFactory.getCurrentSession() 
     .update(configTable); 

我不知道爲什麼上面的代碼表中創建一個新行的代碼它應該在兩種情況下更新我的理解, 任何想法可能會丟失什麼?或者將你所需要的信息來幫助我跟蹤這個問題...

感謝

+0

'sessionFactory.getCurrentSession() .update(configTable);'創建新行? –

回答

1

您需要使用saveOrUpdate()方法會話方法:

sessionFactory.getCurrentSession().saveOrUpdate(configTable); 
1

當更新通過實體的主鍵更新。

確保您的實體具有此註釋以進行保存和更新。

@org.hibernate.annotations.Entity(dynamicInsert = true, dynamicUpdate = true) 
相關問題