Java遍历arraylist后储存为到数据库mysql里的一个column里,怎么弄?

我有一个已知的arraylist<string>,我想把里面的的元素遍历后,储存到mysql的一个column中,表已经建好,之后还需要读取出来。我的思路是,用","隔开... 我有一个已知的arraylist<string>, 我想把里面的的元素遍历后,储存到mysql的一个column中,表已经建好,之后还需要读取出来。我的思路是,用" , "隔开吧,但是不知道怎么写?有没有大神帮忙下,小妹感激不尽 展开
 我来答
mohunk10
推荐于2018-04-05 · TA获得超过754个赞
知道小有建树答主
回答量:466
采纳率:100%
帮助的人:447万
展开全部
简单写了下。你测试看看行不?

publicstaticvoid main(String[] args) {
Connection conn =getConn();
Statement stmt = null;
ResultSet rs = null;
try {
stmt = conn.createStatement();
List<String> arraylist = new ArrayList<String>();
int n = 0;
String sql=null;
//迭代List,批量入库,每迭代100次批量执行一次。
for(String str : arraylist){
if(n++ % 100 == 0){
stmt.executeBatch();
}
sql = "insert into table (name) values ('"+str+"')";
stmt.executeUpdate(sql);
}
//把最后%100不等于0的数据批量入库。
stmt.executeBatch();
//提交。
conn.commit();
//从数据库中读出
sql = "select name from table";
rs = stmt.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString(1));
}
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException ex) {
ex.printStackTrace();
}
e.printStackTrace();
}finally{
try {
if(rs != null){
rs.close();
rs = null;
}
if(stmt != null){
stmt.close();
stmt = null;
}
if(conn != null){
conn.close();
conn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
//获取数据库连接
privatestatic Connection getConn(){
return null;
}
开寻芹092
2013-04-20 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:107万
展开全部
你是要存在一个列里面,那就要多次的执行插入操作,你用iterator遍历的时候就可以一个一个输出来了,你把遍历来的值多次赋值给要插入的值就可以了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式