Class BatchingPreparedStatementManagerImpl

  • All Implemented Interfaces:
    PreparedStatementManager

    public class BatchingPreparedStatementManagerImpl
    extends PreparedStatementManagerImpl
    Batch prepared statement manager implementation. This prepared statement manager will utilize the JDBC addBatch() and exceuteBatch() to batch the SQL statements together to improve the execution performance.
    Author:
    Teresa Kan
    • Constructor Detail

      • BatchingPreparedStatementManagerImpl

        public BatchingPreparedStatementManagerImpl​(JDBCStore store,
                                                    java.sql.Connection conn,
                                                    int batchLimit)
        Constructor. Supply connection.
    • Method Detail

      • flushAndUpdate

        protected void flushAndUpdate​(RowImpl row)
                               throws java.sql.SQLException
        Flush the given row immediately or deferred the flush in batch.
        Overrides:
        flushAndUpdate in class PreparedStatementManagerImpl
        Throws:
        java.sql.SQLException
      • batchOrExecuteRow

        protected void batchOrExecuteRow​(RowImpl row)
                                  throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • flushBatch

        protected void flushBatch()
                           throws java.sql.SQLException
        flush all cached up statements to be executed as a single or batched prepared statements.
        Throws:
        java.sql.SQLException
      • isBatchDisabled

        public boolean isBatchDisabled()
      • setBatchDisabled

        public void setBatchDisabled​(boolean disableBatch)
      • getBatchLimit

        public int getBatchLimit()
      • setBatchLimit

        public void setBatchLimit​(int batchLimit)
      • getBatchedRows

        public java.util.List<RowImpl> getBatchedRows()
      • getBatchedSql

        public java.lang.String getBatchedSql()
      • addBatch

        protected void addBatch​(java.sql.PreparedStatement ps,
                                RowImpl row,
                                int count)
                         throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • executeBatch

        protected int[] executeBatch​(java.sql.PreparedStatement ps)
                              throws java.sql.SQLException
        Throws:
        java.sql.SQLException