java - Spring Batch - 有没有办法创建既不读取也不写入的存储过程步骤?

标签 java sql spring-batch

我有一个存储过程,它在一系列步骤的末尾运行,这些步骤仅合并数据库本身的结果数据。结果,我不需要读取或写入任何数据。只要执行成功就足够了。

有没有简单的方法可以做到这一点?

到目前为止,我的步骤看起来像这样......

    <batch:step id="CleanupStep">
        <batch:tasklet transaction-manager="transactionManager">
            <batch:chunk reader="MergeCleanup"
                         writer="NoOpWriter"/>
            <batch:transaction-attributes propagation="NEVER"/>
        </batch:tasklet>
    </batch:step>

<bean id="MergeCleanup"
      class="org.springframework.batch.item.database.StoredProcedureItemReader" scope="step">
    <property name="dataSource" ref="DataSource"/>
    <property name="procedureName" value="MERGE_CLEANUP"/>
</bean>
<bean id="NoOpWriter"
      class="my.package.NoOpWriter">
</bean>

最佳答案

使用 TaskletStep是正确的解决方案。
您可以在网上找到许多示例。

关于java - Spring Batch - 有没有办法创建既不读取也不写入的存储过程步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28667576/

相关文章:

sql - 插入语句在函数内部不起作用(PostgreSQL)

java - Spring Batch 中的多线程

spring-batch - 如何在Spring批处理中使用decider?

java - 如何在 Java 并行程序中获得理想的线程数?

java - 如何使用 hbase shell 从 hbase 获取以特定值结尾的行

java - 由另一个类扩展的类的模拟方法

java - HBase Java客户端无法访问远程HBase区域服务器

java - 如何更改 JMS 代理内存设置

mysql - 使用多个表的计算字段优化查询

mysql - 选择子查询中列是否为空的位置