如何在 Java 中将 ArrayList 数据类型插入 MySQL 数据库
Posted
技术标签:
【中文标题】如何在 Java 中将 ArrayList 数据类型插入 MySQL 数据库【英文标题】:How to insert ArrayList data type into MySQL database in Java 【发布时间】:2012-11-03 05:12:49 【问题描述】:我有以下变量:
ArrayList<String> NameSet = new ArrayList<String>();
我使用 add
方法在循环中填充项目如下:
NameSet.add(Body.item(t).getAttributes().getNamedItem("name").getNodeValue());
如何在 mysql 数据库中插入长文本数据类型的列表?
【问题讨论】:
检查这个。这可能会帮助***.com/questions/12127407/… 你试过什么?你有什么错误吗? 这可能是个坏主意。将每个元素作为一行存储在附加表中。 【参考方案1】:在 mysql 中没有直接的方法可以将数组列表插入一行。但是,如果您想在单行中插入名称,那么您可以将它们保存到字符串变量中,然后用“字符”将它们分开,然后使用插入查询将其保存在 Db 中,而不是将它们放入数组列表中。
要不然就得另辟蹊径,把这个数组列表转成字符串,然后再做上面的事情
【讨论】:
【参考方案2】:插入批次将是一个很好的解决方案:
假设连接是你的 mysql jdbc 连接:
String queryInsert="INSERT INTO TableName ( name, field2 ,...) values (?,?,..)";
try( PreparedStatement ps= connection.prepareStatement(queryInsert);)
connection.autoCommit(false);
for(String name:NameSet)
ps.setString(1,name);
....
ps.executeBatch();
connection.commit();
catch (SQLException e)
con.rollback();
System.err.format(e.getSQLState(), e.getMessage());
【讨论】:
以上是关于如何在 Java 中将 ArrayList 数据类型插入 MySQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Java 中将 ArrayList 数据类型插入 MySQL 数据库
在 Java 中将 'ArrayList<String> 转换为 'String[]'
在 Java 中将 'ArrayList<String> 转换为 'String[]'