2013-04-11 125 views
0

我有這個插入2k對象的hibernate代碼。我已經設置了hibernate,用於批量處理我的插入和代碼,一切看起來像休眠站點的例子。當批處理生效時,我確實看到了改進,但是當我剖析我的應用程序時,實際上看到2k插入語句正在發送到我的數據庫。我有點期待insert語句是更低和hibernate批量插入仍然會生成很多插入語句

insert into table1(c1, c2) values (...), (...), ..., (...)

形式這是錯誤的期望或有什麼毛病我的批處理設置?

回答

0

是的,這是一個錯誤的期望。批量更新僅僅意味着不是將每個插入語句單獨發送到數據庫,而是將它們分別發送到added to a batch,並且一旦添加了給定數字,該批次就會發送到數據庫。

+0

與此相關的一個小示例文章:http://brian.pontarelli.com/2011/06/21/jdbc-batch-vs-multi-row-inserts/ – Lucas 2013-04-11 21:14:10