设置自定义itemWriter的数据源(弹簧批处理)

时间:2014-04-11 13:54:34

标签: datasource spring-batch

我想从数据库中读取并使用自定义itemWriter写入另一个数据库。 如何为自定义itemWriter设置数据源?

1 个答案:

答案 0 :(得分:0)

请查看此示例项目Spring Batch Example

以下是自定义ItemWriter的示例代码。

import javax.annotation.Resource;
import javax.sql.DataSource;

import org.springframework.batch.item.database.JdbcBatchItemWriter;
import org.springframework.stereotype.Component;

import com.x.y.z.MyBean;

@Component("myJdbcWriter")
public class MyCustomJdbcWriter extends JdbcBatchItemWriter<MyBean> {

    MyCustomJdbcWriter() {

    }

    @Override
    @Resource
    public void setDataSource(DataSource dataSource) {
        super.setDataSource(dataSource);
    }

    // define other methods also that you want to override in the same manner

}

使用Spring的自动检测功能或者你可以在spring xml配置文件中定义一个bean,如下所示,并在你自己的工作中使用这个bean。

<bean id="myJdbcWriter" class="com.x.y.z.MyCustomJdbcWriter"
    scope="step">
    <property name="dataSource" ref="dataSource" />
</bean>