另外,你只插入一张表,为什么要把into 放在循环里面?这相当于,每执行一次插入都开启一个io,你有多少资源可以开启?改为
<insert id="batchInsertArriveInfo" parameterType="java.util.List" useGeneratedKeys="false">
insert all
into
T_ARRIVAL_STATION_INFORMATION
(BUS_PATH_ID,STATION_SN,TASK_STATUS,ARR_TIME,BUS_PATH_NAME,RUN_FLAG,VEHICLE_ID,station_name,station_id)
values
<foreach collection="list" item="info" index="index" separator=",">
(
#{info.busPathId},#{info.stationSn},#{info.taskStatus},
#{info.arrTime},#{info.busPathName},#{info.runFlag},
#{info.vehicleId},#{info.stationName},#{info.stationId}
)
</foreach>
select 1 from dual
</insert>
改为上述,只打开一个io,让其一次执行多条插入