Class MyBatisPagingItemReader<T>

java.lang.Object
org.springframework.batch.item.ItemStreamSupport
org.springframework.batch.item.support.AbstractItemStreamItemReader<T>
org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader<T>
org.springframework.batch.item.database.AbstractPagingItemReader<T>
org.mybatis.spring.batch.MyBatisPagingItemReader<T>
All Implemented Interfaces:
org.springframework.batch.item.ItemReader<T>, org.springframework.batch.item.ItemStream, org.springframework.batch.item.ItemStreamReader<T>, org.springframework.beans.factory.InitializingBean

public class MyBatisPagingItemReader<T>
extends org.springframework.batch.item.database.AbstractPagingItemReader<T>
org.springframework.batch.item.ItemReader for reading database records using MyBatis in a paging fashion.

Provided to facilitate the migration from Spring-Batch iBATIS 2 page item readers to MyBatis 3.

Since:
1.1.0
Author:
Eduardo Macarron
  • Field Summary

    Fields inherited from class org.springframework.batch.item.database.AbstractPagingItemReader

    logger, results
  • Constructor Summary

    Constructors
    Constructor Description
    MyBatisPagingItemReader()  
  • Method Summary

    Modifier and Type Method Description
    void afterPropertiesSet()
    Check mandatory properties.
    protected void doJumpToPage​(int itemIndex)  
    protected void doReadPage()  
    void setParameterValues​(Map<String,​Object> parameterValues)
    The parameter values to be used for the query execution.
    void setParameterValuesSupplier​(Supplier<Map<String,​Object>> parameterValuesSupplier)
    The parameter supplier used to get parameter values for the query execution.
    void setQueryId​(String queryId)
    Public setter for the statement id identifying the statement in the SqlMap configuration file.
    void setSqlSessionFactory​(org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory)
    Public setter for SqlSessionFactory for injection purposes.

    Methods inherited from class org.springframework.batch.item.database.AbstractPagingItemReader

    doClose, doOpen, doRead, getPage, getPageSize, jumpToItem, setPageSize

    Methods inherited from class org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader

    close, getCurrentItemCount, isSaveState, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, update

    Methods inherited from class org.springframework.batch.item.ItemStreamSupport

    getExecutionContextKey, setExecutionContextName, setName

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MyBatisPagingItemReader

      public MyBatisPagingItemReader()
  • Method Details

    • setSqlSessionFactory

      public void setSqlSessionFactory​(org.apache.ibatis.session.SqlSessionFactory sqlSessionFactory)
      Public setter for SqlSessionFactory for injection purposes.
      Parameters:
      sqlSessionFactory - a factory object for the SqlSession.
    • setQueryId

      public void setQueryId​(String queryId)
      Public setter for the statement id identifying the statement in the SqlMap configuration file.
      Parameters:
      queryId - the id for the statement
    • setParameterValues

      public void setParameterValues​(Map<String,​Object> parameterValues)
      The parameter values to be used for the query execution.
      Parameters:
      parameterValues - the values keyed by the parameter named used in the query string.
    • setParameterValuesSupplier

      public void setParameterValuesSupplier​(Supplier<Map<String,​Object>> parameterValuesSupplier)
      The parameter supplier used to get parameter values for the query execution.
      Parameters:
      parameterValuesSupplier - the supplier used to get values keyed by the parameter named used in the query string.
      Since:
      2.1.0
    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      Check mandatory properties.
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
      Overrides:
      afterPropertiesSet in class org.springframework.batch.item.database.AbstractPagingItemReader<T>
      Throws:
      Exception
      See Also:
      InitializingBean.afterPropertiesSet()
    • doReadPage

      protected void doReadPage()
      Specified by:
      doReadPage in class org.springframework.batch.item.database.AbstractPagingItemReader<T>
    • doJumpToPage

      protected void doJumpToPage​(int itemIndex)
      Specified by:
      doJumpToPage in class org.springframework.batch.item.database.AbstractPagingItemReader<T>