是否可以立即将arraylist插入数据库中,还是必须遍历每个记录并逐个插入?
答案 0 :(得分:3)
使用JDBC进行批量插入:
PreparedStatement ps = c.prepareStatement("INSERT INTO MY_TABLE VALUES (?, ?)");
for(MyElement e : myList) {
ps.setString(1, e.getString());
ps.setInt(2, e.getInt());
ps.addBatch();
}
ps.executeBatch();
答案 1 :(得分:1)
您可以使用批量查询(例如
)立即插入数据库int i =0;
PreparedStatement ps = con.prepareStatement("INSERT INTO DataTable VALUES (?)");
while(i<list.size()){
ps.setInt(1,list.get(i));
ps.addBatch();
i++;
}
ps.executeBatch();
答案 2 :(得分:0)
您可以转换ArrayList to Array
,然后使用PrepareStatement
方法将数组传递给setArray()
。