JDBC連線批量處理資料入庫

2021-10-11 01:16:58 字數 2856 閱讀 6072

public

class

jdbctemplate

/** *

* 提交事務

* * @param connection

* */public

static

void

commit

(connection connection)

catch

(sqlexception e)

}/**

** 開啟事務

* * @param connection

* */public

static

void

begintx

(connection connection)

catch

(sqlexception e)

}/**

** 回滾

* * @param connection

* */public

static

void

rollback

(connection connection)

catch

(sqlexception e)

}/**

** todo

*

* @param statement

* @param connection

* */public

static

void

releasedb

(statement statement, connection connection)

if(connection != null)

}catch

(sqlexception e)

}public

static

void

insertdata

(list

sqllist)

statement.

executebatch()

; statement.

clearbatch()

; jdbctemplate.

commit

(connection);}

catch

(exception ex)

finally

}}

呼叫(執行緒池處理):

public boolean intodb

(list

> lists, string handle, string strtime)

throws interruptedexception

insertheadsql = insertheadsql.

substring(0

, insertheadsql.

length()

-1);

insertheadsql +=

" where sb_id = "

+ vals[0]

+" and type = "

+ vals[1]

+" and readable_date = to_date('"

+ strtime +

"','yyyy-mm-dd')";}

catch

(exception exception)

}else

sqllist.

add(insertheadsql);}

jdbctemplate.

insertdata

(sqllist)

; sqllist.

clear()

;}catch

(exception exception)

return1;

}};// 這裡提交的任務容器列表和返回的future列表存在順序對應的關係

tasks.

add(task);}

list

> results = exec.

invokeall

(tasks)

;// 關閉執行緒池

exec.

shutdown()

; system.out.

println

("資料入庫執行緒任務執行結束");

system.err.

println

("執行任務消耗了 :"

+(system.

currenttimemillis()

- start)

+"毫秒");

return

true

;}

實體類:

public

class

insertsqlentity

public

void

settablename

(string tablename)

public string getcolumns()

public

void

setcolumns

(string columns)

public string getvalues()

public

void

setvalues

(string values)

public list

getvaluelist()

public

void

setvaluelist

(list

valuelist)

}

JDBC批量處理

1.statement 提供addbatch string sql 和 excutebatch 方法批量更新資料 statement smt smt.addbatch insert into talbename.smt.addbatch sql 語句2 smt.addbatch sql 語句3 sm...

JDBC 批量處理資料庫

jdbc 批量更新處理的通用方法 純原生 param sql 執行的插入 刪除 更新的語句 param batchnumber 每批處理的數值 param args 二維陣列存放批量資料 public void batch string sql,int batchnumber,object.para...

JDBC的批量處理

jdbc的批量處理 批量處理出現的原因 statement的execute 等方法一次只能執行一條sql語句,如果有多條sql語句要執行的話,可以使用addbatch 方法將要執行的sql語句加進來,然後執行executebatch方法,就可以在呼叫中執行多條語句,提高效率 批量處理的 public...