Java遍历arraylist后储存为到数据库mysql里的一个column里,怎么弄?
我有一个已知的arraylist<string>,我想把里面的的元素遍历后,储存到mysql的一个column中,表已经建好,之后还需要读取出来。我的思路是,用","隔开...
我有一个已知的arraylist<string>, 我想把里面的的元素遍历后,储存到mysql的一个column中,表已经建好,之后还需要读取出来。我的思路是,用" , "隔开吧,但是不知道怎么写?有没有大神帮忙下,小妹感激不尽
展开
2个回答
展开全部
简单写了下。你测试看看行不?
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;
}
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;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |