[問題] Hibernate executeUpdate的問題
※狀況概述:
以下的程式,執行第一次update時還可以跑到commit,但是在頁面上
仍然顯示修改前的結果。
但第二次執行update時,就卡住到不了commit。
※程式碼:
public void edit(Customer customer){
Transaction tx = getSession().beginTransaction();
try {
SQLQuery query = getSession().createSQLQuery("update CUSTOMER set
NAME='"+customer.getName()+"', ADDRESS='"+customer.getAddress()+"'"+
" where CUSTOMER_ID="+customer.getCustomerId()+"");
query.executeUpdate();
tx.commit();
}catch (Exception e) {
tx.rollback();
}
}
※錯誤訊息:
沒跳錯誤訊息,就是一直卡住不動。
※補充說明:
我把上面產生出來的SQL,貼到sqldeveloper上面去執行,是可以正常執行的。
為甚麼update後有執行commit,之後的update卻仍然卡住,請問卡住不動的原因是什麼呢?
另外我將以上的寫法改成:
getHibernateTemplate().update(customer);
結果也是一樣。
-----------------------
改寫成以下這樣就好了:
public void edit(Customer customer){
Session session = getHibernateTemplate().getSessionFactory().openSession();
Transaction tx = session.beginTransaction();
session.update(customer);
tx.commit();
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.167.53.239 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/java/M.1595492119.A.8F4.html
→
07/23 17:05,
4年前
, 1F
07/23 17:05, 1F
※ 編輯: lueichun (1.162.210.36 臺灣), 07/23/2020 22:01:30
→
07/23 23:53,
4年前
, 2F
07/23 23:53, 2F
→
07/24 22:07,
4年前
, 3F
07/24 22:07, 3F
推
07/26 14:55,
4年前
, 4F
07/26 14:55, 4F
→
07/26 14:55,
4年前
, 5F
07/26 14:55, 5F
→
07/26 22:25,
4年前
, 6F
07/26 22:25, 6F
java 近期熱門文章
PTT數位生活區 即時熱門文章