sjh 儲存問題 資料沒新增成功 居然不拋異常 也不報錯

heshaowei發表於2008-11-05
各位大哥 請教個簡單的問題 我是初學表砸我
一 剛用struts hiber jdon 來儲存資料 rootDao.insert(rlist); 資料沒新增成功 居然不拋異常 也不報錯 不知是為什麼
試了下現有就有兩路情況不報錯
1 資料庫 關閉了 去儲存 不報異常
2 資料記錄重複了 無法儲存 也不報異常
很是納悶
程式碼:

Service 中
public void create(EventModel em) {
// TODO Auto-generated method stub
Rootlist rlist = (Rootlist) em.getModel();
try {
rootDao.insert(rlist);
} catch (Exception e) {
// TODO Auto-generated catch block
em.setErrors(e.getMessage());
}

}

DAO 中
RootDao


public class RootDaoImp extends DaoCRUDTemplate implements JdbcDao {
//沒有重寫方法 是用的父方法儲存的
}


還有在sjh 中
配置了
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>
com.jdon.persistence.hibernate.CloseSessionInViewFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

如果 新增兩條記錄 一條新增成功 一條失敗了

會不會自動回滾 這條兩記錄 到都不成功的狀態
還是我要手動回滾
=======================
如果要手動回滾 我是應該在

Service中手動開啟事物 回滾 和提交事物 (在service 中開啟事物 然後呼叫dao 的兩個儲存方法 最後提交或回滾)

還是在DAO 中 手動開啟事物 回滾 和提交事物(在DAO 中開啟事物 寫一個方法 儲存兩個物件 然後提交或回滾)

相關文章