Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当使用JpaPagingItemReader时,spring批处理如何在内部初始化状态?_Java_Spring_Spring Boot_Jpa_Spring Batch - Fatal编程技术网

Java 当使用JpaPagingItemReader时,spring批处理如何在内部初始化状态?

Java 当使用JpaPagingItemReader时,spring批处理如何在内部初始化状态?,java,spring,spring-boot,jpa,spring-batch,Java,Spring,Spring Boot,Jpa,Spring Batch,我一直试图弄清楚SpringBatch实际上是如何初始化状态的,但我找不到相当明显的东西 当一个步骤被配置为有一个JpaPagingItemReader时,我相信数据是作为页面从数据库中读取的。我可以在实现中看到从其他基类继承/重写的doRead、doReadPage等方法。如果springbatch只需要一个ItemReader,那么我希望它只依赖于read方法,然而read方法依赖于其中一个抽象类中的results字段,该类必须首先水合。那么这是什么时候发生的呢?在初始化这个类时,有没有什么

我一直试图弄清楚SpringBatch实际上是如何初始化状态的,但我找不到相当明显的东西

当一个步骤被配置为有一个JpaPagingItemReader时,我相信数据是作为页面从数据库中读取的。我可以在实现中看到从其他基类继承/重写的doRead、doReadPage等方法。如果springbatch只需要一个ItemReader,那么我希望它只依赖于read方法,然而read方法依赖于其中一个抽象类中的results字段,该类必须首先水合。那么这是什么时候发生的呢?在初始化这个类时,有没有什么魔法可以调用这个实现上的某些方法

JpaPagingItemReader是一个,这意味着它的状态保存在数据库中,并在重新启动时恢复

由于它扩展了AbstractItemCountingItemStreamItemReader,因此read.count使用ItemStreamupdate保存在块边界处。重新启动时,将根据页面大小从数据库和当前页面读取读取计数

我希望这能澄清事情是如何在内部运作的