publicstatic
string gendata(connection dbconn,basevc basevc,string tablename,string rpdt,rprjrtj_pl jrtjpar,string sql)
else
if("1".equals(zhlx))
else
if("2".equals(zhlx))
else
if("3".equals(zhlx)||"0".equals(zhlx)||"6".equals(zhlx)||"8".equals(zhlx)||"9".equals(zhlx)||"a".equals(zhlx))
else
if("d".equals(zhlx) ||"5".equals(zhlx))
else
if("4".equals(zhlx) || "b".equals(zhlx) ||"c".equals(zhlx))
string khrq = commonutil.null2empty(rs.getstring("khrq"));
string xhrq = commonutil.null2empty(rs.getstring("xhrq"));
string acst = commonutil.null2empty(rs.getstring("acst")); //
原賬戶狀態
//string feam = commonutil.null2empty(rs.getstring("feam"));
//1正常、2休眠、3合同限制、4司法限制狀態
string zhzt="1";
if("1".equals(acst.substring(0,1))) else
if("1".equals(acst.substring(4,5))) else
if (acst.length()==9)
} else
string aa=ca.getacct();
if("1".equals(aa))
}string isnew= commonutil.null2empty(rs.getstring("isnew"));//
**是不是修改的 **/
if(!isnew.equals(""))
}string sfktwsyh = commonutil.null2empty(rs.getstring("sfktwsyh"));
string sfktsjyh = commonutil.null2empty(rs.getstring("sfktsjyh"));
//pstmt = dbconn.preparestatement(insert.tostring());
int fnum = 1;
pstmt.setstring(fnum++,bkno);
pstmt.setstring(fnum++,rpdt);
pstmt.setstring(fnum++,zhh);
pstmt.setstring(fnum++,zhmc);
pstmt.setstring(fnum++,khnbbm);
pstmt.setstring(fnum++,khhjrjgbm);
pstmt.setstring(fnum++,khhnbjgh);
pstmt.setstring(fnum++,zhbz);
pstmt.setstring(fnum++,zhlx);
pstmt.setstring(fnum++,khrq);
pstmt.setstring(fnum++,xhrq);
pstmt.setstring(fnum++,zhzt);
pstmt.setstring(fnum++,sfktwsyh);
pstmt.setstring(fnum++,sfktsjyh);
pstmt.setstring(fnum++,acst);
pstmt.setstring(fnum++, "0");
pstmt.setstring(fnum++, "1");
pstmt.addbatch();
if(!isnew.equals(""))
}map
datamap=new
hashmap();
datamap.put("bkno",bkno);/****/
datamap.put("cjrq",rpdt);/****/
datamap.put("zhh",zhh);
datamap.put("zhmc",zhmc);
datamap.put("khnbbm",khnbbm);
datamap.put("khhjrjgbm",khhjrjgbm);
datamap.put("khhnbjgh",khhnbjgh);
datamap.put("zhbz",zhbz);
datamap.put("zhlx",zhlx);
datamap.put("khrq",khrq);
datamap.put("xhrq",xhrq);
datamap.put("zhzt",zhzt);
datamap.put("sfktwsyh",sfktwsyh);
datamap.put("sfktsjyh",sfktsjyh);
datalist.add(datamap);
}pstmt.executebatch();
long endtime1 = system.currenttimemillis(); //
獲取結束時間 測試用,生產可注釋
輸出程式執行時間 測試用,生產可注釋
pstmt.close();
rtcd=jrtjcomm.genfile(dbconn, tablename, basevc, rpdt,jrtjpar,datalist);
}catch
(exception e)
finally
catch
(exception e)
}return
rtcd;
}
測試比對不使用批量的時間,使用後是20秒以內,多數是17秒左右,沒用批量是3分鐘以上,資料是7000多條。
注意:rewritebatchedstatements=true 這個加到你的資料庫配置的url後面。
本人菜雞乙個,歡迎大佬們來吐槽和指導。
jdbc批量插入
分享牛,分享牛原創。有這樣乙個需求,文字檔案中的資料批量的插入mysql 怎麼用 jdbc 方式批量插入呢?jdbc預設提供了批量插入的方法,可能用一次就忘記了,這裡做筆記記錄一下 jdbc 批量插入吧。connection conn null try 執行 ps.executebatch conn...
JDBC批量插入資料
一.直接上源 以匯入課表資料為例 批量插入新申請 匯入預設課表 throws sqlexception catch sqlexception e int number ps.executebatch 把剩餘的資料插入 conn.commit 手動提交事務 try catch sqlexception...
JDBC批量插入資料
批量操作的方式一般有兩種 事務提交方式和批量處理 先將命令的提交方式設為false,即手動提交conn.setautocommit false 最後在所有命令執行完之後再提交事務conn.commit private string url jdbc mysql localhost 3306 test...