交给spring管理的ibaits的sqlmapclient是继承daosupport的
所以它的单个方法 都是一个独立是事务 如果要在执行多个方法的时候进行事务管理 就不行了
所以这里我选择了下面这种做法
public void resetData(final DHotelInfo dHotelInfo,final DHotelDesc dHotelDesc) {
// TODO Auto-generated method stub
getSqlMapClientTemplate().execute(new SqlMapClientCallback(){
public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
// TODO Auto-generated method stub
executor.startBatch();
executor.insert("D_HOTEL_INFO.insertRecord",dHotelInfo);
executor.insert("D_HOTEL_DESC.insertRecord",dHotelDesc);
executor.executeBatch();
return null;
}
});
}
如果在纯ibatis下 就可以直接 startTransaction 了
所以它的单个方法 都是一个独立是事务 如果要在执行多个方法的时候进行事务管理 就不行了
所以这里我选择了下面这种做法
public void resetData(final DHotelInfo dHotelInfo,final DHotelDesc dHotelDesc) {
// TODO Auto-generated method stub
getSqlMapClientTemplate().execute(new SqlMapClientCallback(){
public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
// TODO Auto-generated method stub
executor.startBatch();
executor.insert("D_HOTEL_INFO.insertRecord",dHotelInfo);
executor.insert("D_HOTEL_DESC.insertRecord",dHotelDesc);
executor.executeBatch();
return null;
}
});
}
如果在纯ibatis下 就可以直接 startTransaction 了