jdbcTemplate批量插入数据
public void buyTool(List<UserToolNew> userToolList) throws Exception {
final List<UserToolNew> intsertlist=new ArrayList<UserToolNew>();
if(!CollectionUtils.isEmpty(userToolList)){
intsertlist.addAll(userToolList);
}
final Calendar invalidateTimeCalendar = Calendar.getInstance();
invalidateTimeCalendar.add(Calendar.DAY_OF_MONTH, 30);
invalidateTimeCalendar.set(Calendar.HOUR_OF_DAY, 23);
invalidateTimeCalendar.set(Calendar.MINUTE, 59);
invalidateTimeCalendar.set(Calendar.SECOND, 59);
final Timestamp createTime = Timestamp.valueOf(
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
final Timestamp invalidateTime = Timestamp.valueOf(
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").
format(invalidateTimeCalendar.getTime()));
if(!CollectionUtils.isEmpty(intsertlist)){
String insertSql="insert into yyff_user_tool("
+"user_id,tool_id,tool_pool_id,use_flag,own_type,fee,create_time,invalidate_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
jdbcTemplate.batchUpdate(insertSql, new BatchPreparedStatementSetter() {
public int getBatchSize() {
return intsertlist.size();
}
public void setValues(PreparedStatement ps, int i)
throws SQLException {
UserToolNew userTool=(UserToolNew)intsertlist.get(i);
ps.setLong(1,userTool.getUserId());
ps.setInt(2, userTool.getToolId());
ps.setInt(3, userTool.getToolPoolId());
ps.setString(4, "1");
ps.setString(5, "1");
ps.setInt(6, userTool.getFee());
ps.setTimestamp(7, createTime);
ps.setTimestamp(8, invalidateTime);
}
});
}
}
分享到:
相关推荐
NULL 博文链接:https://huibin.iteye.com/blog/618316
参数: List<Map> paramMaps = new ArrayList(); for(int i = 0; i < 100; i++ ){ Map paramMap = new HashMap(); paramMap.put(param1, param1);... paramMap.put(param2, param2);... paramMap.put(param5, param5
11.5.1. 使用SimpleJdbcInsert插入数据 11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall...
jdao有支持事务,支持批量插入数据等特性。同时jdao底层数据库操作提供接口,编程人员可以自己实现。 如果你觉得hibernate,ibatis等orm框架过于笨重,不烦试下jdao,它可以在团队开发中规范团队持久层代码,较少...
11.3.3 插入Lob类型的数据 11.3.4 以块数据方式读取Lob数据 11.3.5 以流数据方式读取Lob数据 11.4 自增键和行集 11.4.1 自增键的使用 11.4.2 如何规划主键方案 11.4.3 以行集返回数据 11.5 其他类型的JDBCTemplate ...
11.3.3 插入Lob类型的数据 11.3.4 以块数据方式读取Lob数据 11.3.5 以流数据方式读取Lob数据 11.4 自增键和行集 11.4.1 自增键的使用 11.4.2 如何规划主键方案 11.4.3 以行集返回数据 11.5 其他类型的JDBCTemplate ...
11.5.1. 使用SimpleJdbcInsert插入数据 11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall...
创建一张表employee插入一些测试数据.DROP TABLE IF EXISTS `employee`; CREATE TABLE `employee` ( `id` int(11) NOT NULL, `name` varchar(300) NOT NULL, `join_date` datetime NOT NULL,...