读书人

spring Batch兑现数据库大数据量读写

发布时间: 2012-07-30 16:19:05 作者: rapoo

spring Batch实现数据库大数据量读写

1. data-source-context.xml

?

?2.?quartz-context.xml ? ? ??commit-interval="10000"每次批量数据的条数,数值越大效率越高,可在此处添加事物处理,

每次回滚数就是commit-interval数

?

?

3.定时调度job类 QuartzLedgerJob.java

?

?package net.etongbao.vasp.ac.quartz;

?

?

? 总结:?测试数据8万多条,响应时间3分多钟。

?

关键在于quartz-context.xml 中<bean id="ledgerReader"

ref="dataSource" />

<property name="sql" value="select * from ledger" />?

<property name="rowMapper" ref="ledgerRowMapper" />

</bean> 负责读取数据 ,在程序执行时一次性抓取全部数据后在批量的交给LedgerWriter进行写操作。当然也可以使用分页读取JdbcPagingItemReader,但要分页数量与写入数量要大写相同,还可以对分页出来的数据进行添加悲观锁

LedgerWriter.java 负责写入数据,每次写入1000条。

?

?

?

?

?

读书人网 >其他数据库

热点推荐