Java 如何将带有字符串对象的arrayList设置为准备好的语句

Java 如何将带有字符串对象的arrayList设置为准备好的语句,java,jdbc,Java,Jdbc,我有一个数据结构的java ArrayList(字符串名称、字符串电子邮件)。任务是将列表保存到数据库中。我想到了一种使用for循环和use语句的方法。setString(I,name)等。有没有更好的解决方案。提前感谢。因为您将使用普通JDBC,批处理语句可能对您有用: PreparedStatement stmt = connection.prepareStatement( "INSERT INTO xx (name, email) VALUES (?, ?)"); for (MySt

我有一个数据结构的java ArrayList(字符串名称、字符串电子邮件)。任务是将列表保存到数据库中。我想到了一种使用for循环和use语句的方法。setString(I,name)等。有没有更好的解决方案。提前感谢。

因为您将使用普通JDBC,批处理语句可能对您有用:

PreparedStatement stmt = connection.prepareStatement(
  "INSERT INTO xx (name, email) VALUES (?, ?)");

for (MyStructure s : list) {
  stmt.setString(1, s.name);
  stmt.setString(2, s.email);
  stmt.addBatch();
}

stmt.executeBatch();
所以我觉得你已经有了一个好主意。您可以在此处找到更多信息:


就我个人而言,我会使用类来描述数据结构,而不是列表,但是您构建
语句的方式对我来说很好。数据结构的ArrayList?你是说一个包含类的对象的列表,这个类有两个属性:名称和电子邮件?正确的?嗯,我觉得你所想的逻辑是正确的。@Naved:是的,我指的是一个包含类对象的列表。谢谢,非常感谢卢卡斯。非常感谢你的帮助。:)