您的位置:首页 > 数据库

ibatis.SqlMapClientTemplate的使用集锦

2016-01-08 19:36 477 查看
import org.springframework.orm.ibatis.SqlMapClientTemplate;

importorg.springframework.orm.ibatis.SqlMapClientCallback;

@Repository("skulistDao")

public class SkulistDao extends SqlMapClientTemplate{
//1.批量插入

public
int 
insertSku(finalList<Skulist>skulist){
        int rowsNum = (Integer)this.execute(new SqlMapClientCallback(){
            public Object doInSqlMapClient(SqlMapExecutorexecutor)throwsSQLException {
                executor.startBatch();
                for (Skulist sku :skulist) {
                    executor.insert("Skulist.insertSku",sku);
                }
                return executor.executeBatch();
            }
        });
        return rowsNum;
}

//2.查询对象

public int count(Map<String, Object> params) {

        

        return (Integer)this.queryForObject("Skulist.count", params);

    }

//3.查询集合

 public List <SKU> querySKUByWidAndSrcId(SKUDetail skuDetail){

        

        List<SKU> skuList = this.queryForList("Skulist.querySKUByWidAndSrcId", skuDetail);

        return skuList ;

}

//4.批量更新

public void updateBatch(List<SKUMain> SKUlist) throws SQLException {

        this.getSqlMapClient().startBatch();

        for (SKUMain bw : SKUlist) {

            this.updateSKU(bw);

        }

        this.getSqlMapClient().executeBatch();

    }

//5.更新

public void updateSKU(SKUMain bw) {

        this.update("Skulist.updateSKU", bw);

    }

//6.删除

 public int deleteSKU(Map<String, Object> params) {

        

        return this.delete("Skulist.deleteSKU", params);

    }

//7.批量删除

 public Object batchDelete(final String[] ids) {

        return this.execute(new SqlMapClientCallback() {

            public Object doInSqlMapClient(SqlMapExecutor executor)

                    throws SQLException {

                executor.startBatch();

                for (int i=0;i<ids.length;i++) {

                  //根据id查询

                    Map<String, Object> params = new HashMap<String, Object>();

                 

                    params.put("id", ids[i]);

                    executor.delete("Skulist.deleteskuById", params);

                }

                return executor.executeBatch();

            }

        });

    }

}

8.批量删除

public void deleteBatchOutRatio(List<RdcOutRatio>list) throws SQLException {
                   this.getSqlMapClient().startBatch();
                   for(OutRatio ror : list) {
                            this.getSqlMapClient().delete("OutRatio.deleteOutRatio",ror);
                   }
                   this.getSqlMapClient().executeBatch();
                  
         }

9.批量更新

public int updateSheetIdBatch(finalMap<String, Map<String, Object>> params)
                            throwsSQLException {
                   return(Integer) this.execute(new SqlMapClientCallback() {
                            publicObject doInSqlMapClient(SqlMapExecutor executor)
                                               throwsSQLException {
                                     executor.startBatch();
                                     for(String key : params.keySet()) {
                                           executor.update("Result.updateSheetIdAndState",
                                                                 params.get(key));
                                     }
                                     returnexecutor.executeBatch();
                            }
                   });
         }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ibatis.SqlMapClientT