String url = "jdbc:postgresql://数据库地址/库";
String name = "org.postgresql.Driver";
String user = "postgres";
String password = "Aa123456";
Connection conn = null;
try {
Class.forName(name);
conn = DriverManager.getConnection(url, user, password);
conn.setAutoCommit(false);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
String prefix = "insert into county_ranking (id,datatime,cityname,statype,comindex,\"comindexImprove\",pm25,\"pm25Improve\",pm10,\"pm10Improve\",o3_8h,\"o3_8hImprove\",no2,\"no2Improve\",so2,\"so2Improve\",co,\"coImprove\",o3_1h,\"o3_1hImprove\") values";
try {
StringBuffer suffix = new StringBuffer();
conn.setAutoCommit(false);
Statement statement = conn.createStatement();
for (Map<String, Object> m : mapList) {
suffix.append("('"+m.get("dataid")+"','"+m.get("datatime")+"','"+m.get("cityname")+"','"+m.get("statype")+"','"+m.get("index")+"','"+m.get("indexImprove")+"','"+m.get("pm25")+"','"+m.get("pm25Improve")+"','"+m.get("pm10")+"','"+m.get("pm10Improve")+"','"+m.get("o3_8h")+"','"+m.get("o3_8hImprove")+"','"+m.get("no2")+"','"+m.get("no2Improve")+"','"+m.get("so2")+"','"+m.get("so2Improve")+"','"+m.get("co")+"','"+m.get("coImprove")+"','-999"+"','-999'"+"),");
}
//这里面减一 是为了把循环最后面的那个逗号去掉
String sql = prefix + suffix.substring(0,suffix.length()-1);
System.out.println(sql);
statement.addBatch(sql);
statement.executeBatch();
suffix = new StringBuffer();
conn.commit();
statement.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
JDBC batch批处理,方法中访问数据库插入数据。多数据源插入数据库
最新推荐文章于 2024-06-06 15:20:00 发布