如何从Spring Batch Tasklet调用存储过程?

时间:2015-06-07 16:43:19

标签: stored-procedures spring-batch tasklet

提到Spring Batch中的TaskletStep可用于调用存储过程。任何人都可以提供一个如何从TaskletStep调用存储过程的示例吗?到目前为止,我已经做到了这一点,但它抛出一个异常,说“配置问题:元素[callStoredProcedure]无法访问”

       <job id="job1">
          <step id="step1">
                <tasklet ref="myTasklet"/>
          </step>
       </job>

       <bean id="myTasklet" class="MyClass">
             <property name="dataSource" ref="dataSource"/>
             <property name="sql" value="call stored_procedure()"/>
       </bean>

Java Class

        class MyClass implements Tasklet{
               @Override
               public RepeatStatus execute(StepContribution contribution,
        ChunkContext chunkContext) throws Exception {
                  JdbcTemplate myJDBC=new JdbcTemplate(getDataSource());
                  myJDBC.execute(sql);
                  return RepeatStatus.FINISHED;
             }      
        }

如何以及在何处配置存储过程?会不胜感激收到任何指示?

谢谢和问候

1 个答案:

答案 0 :(得分:0)

而不是

value="call stored_procedure()

刚刚放

value="stored_procedure" without () on end.

这应解决您的问题