JdbcBatchItemWriter存储过程调用未被调用

时间:2019-06-09 16:19:58

标签: jdbc spring-batch

我正在尝试在Spring Batch项目中调用存储过程,当Spring Batch运行时,存储过程具有更新,既没有更新的记录出现在数据库中,也没有发生异常。

我已经验证了相应配置的spring batch writer的流程

@Bean
ItemWriter<EPCAddress> mdmAddrItemWriter(DataSource dataSource, 
   NamedParameterJdbcTemplate jdbcTemplate) {

     System.out.println("mdmAddrItemWriter...");
     JdbcBatchItemWriter<EPCAddress> writer = new JdbcBatchItemWriter<EPCAddress>();
     try {

            writer.setItemSqlParameterSourceProvider(new BeanPropertyItemSqlParameterSourceProvider<EPCAddress>());
            writer.setSql("CALL TEMP_STREET_ADDR_STANDR_PROC (:addr_ln_1_txt,:city_name,:teritry_id,:postl_cd_num,:loctr_id)");
            writer.setDataSource(dataSource);
            writer.setAssertUpdates(false);

    System.out.println("After paramProvider...");
    System.out.println("databaseItemWriter="+writer.toString());
     }
     catch (Exception e) {
         e.printStackTrace();
        // TODO: handle exception
    }
    return writer;
}

是否有任何方法可以调试存储过程是否真正被调用?

1 个答案:

答案 0 :(得分:0)

存储过程出现问题。用简单的语句更新后,它可以正常工作。