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();
}
});
}
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();
}
});
}
相关文章推荐
- oracle跟踪事件(dump)总结
- mysql 常用命令
- (笔记)Mysql命令desc:获取数据表结构
- (笔记)Mysql命令create table:创建数据表
- (笔记)Mysql命令select:当前选择(连接)的数据库
- 代码实现打开和关闭数据库
- (笔记)Mysql命令use:使用数据库
- (笔记)Mysql命令drop database:删除数据库
- Oracle12c中性能优化增强新特性之数据库智能闪存
- mysql 查询语句
- MySQL临时表的简单用法(复制)
- GP数据库备份
- 使用OUTPUT从句从SQL Server表删除和归档大量记录
- 使用OUTPUT从句从SQL Server表删除和归档大量记录
- GP与ORACLE数据库语法差异汇总
- 简单的多表联查sql
- Mysql inner join on用法例子
- SQL IsNullOrEmpty函数
- mysql查询并导出指定数据,select from,where,into outfile导出,fields terminated by分隔导出数据
- GP数据库开发语句