最近作了一個excel的導入,一次性的解析好後作成一個list最後插入數據庫中,剛開始都是循環插入的,由於以前java
的數據量比較小,因此看不出來效率,可是這個excel的數據大概有3萬條,這樣循環的話很慢,mysql
因而就想到用批處理,網上找了找,發現不少都是基於mysql'的,oracle還真很少,因而查資料,總算找到了,只須要配置一個mapper文件就好了sql
<insert id="insertBatch" parameterType="java.util.List">
insert into TEST
( TEST_ID,
TEST_NAME)
<foreach collection="testList" item="test" index="index"
separator="union all">
( select 數據庫
#{test.id,jdbcType=VARCHAR},oracle
#{test.name,jdbcType=VARCHAR},
from dual)
</foreach>
</insert>
app
也是比較簡單,效率快多了spa