springJdbcTemplate的批量插入语句

写这篇博客很大程度是因为我家那位美丽大方可爱的小仙女,在此谢谢她!在她的陪伴下在这条道路上会越走越远!

批量插入主要是用到了batchUpdate(sql,parms)方法,parms传入的是List集合.

原理很简单,先将传入的参数遍历,存入行的List集合中,再将list集合作为batchUpdate(sql,parms)方法的parms参数传入就行,

我这里List集合里面是Map类型的集合,可以根据实际情况传入自定义的pojo类的对象.

话不多说,直接上代码:

public void addSIMDataFlow(List<Map<String, Object>> list) {
try {
String sql = "insert into sgmw.T_D_SIM_FLOW (ID, ONDATE, ICCID, C_STATUS,"
+"C_TYPE,TOTAL_USED,TOTAL_USED_MONTH,p_cased_month,p_used_mth,m_used_h,"
+ "p_used_day,m_used_day) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
List<Object[]> parms = new ArrayList<>();
for (Map<String, Object> map : list) {
String uuid = UuidUtil.generateUUID();
String ONDATE = (String) map.get("ondate");
String ICCID = (String) map.get("iccid");
String C_STATUS = (String) map.get("status");
String C_TYPE = (String) map.get("type");
Object TOTAL_USED = map.get("totalUsed");
Object TOTAL_USED_MONTH = map.get("totalUsed_Month");
Object p_canused_month = map.get("P_CanUsed_Month");
Object p_used_month = map.get("P_Used_Month");
Object m_used_month = map.get("M_Used_Month");
Object p_used_day = map.get("P_Used_Day");
Object m_used_day = map.get("M_Used_Day");
parms.add(new Object[] { uuid.toString(), ONDATE, ICCID, C_STATUS, C_TYPE, TOAL_USED,                  TOTAL_USED_MONTH,p_canused_month, p_used_month, m_used_month, p_used_day,                                          m_used_day });
}
jdbcTemplateOracle.batchUpdate(sql,parms);
} catch (Exception e) {
e.printStackTrace();
}

}


猜你喜欢

转载自blog.csdn.net/iteen/article/details/80113246
今日推荐