org.hibernate.jdbc

Class AbstractBatcher

Implemented Interfaces:
Batcher
Known Direct Subclasses:
BatchingBatcher, NonBatchingBatcher

public abstract class AbstractBatcher
extends java.lang.Object
implements Batcher

Manages prepared statements and batching.
Author:
Gavin King

Field Summary

protected static Logger
log

Constructor Summary

AbstractBatcher(ConnectionManager connectionManager, Interceptor interceptor)

Method Summary

void
abortBatch(SQLException sqle)
void
cancelLastQuery()
void
closeConnection(Connection conn)
void
closeQueryStatement(PreparedStatement ps, ResultSet rs)
void
closeStatement(PreparedStatement ps)
void
closeStatements()
Actually releases the batcher, allowing it to cleanup internally held resources.
protected abstract void
doExecuteBatch(PreparedStatement ps)
void
executeBatch()
protected SessionFactoryImplementor
getFactory()
ResultSet
getResultSet(CallableStatement ps, Dialect dialect)
ResultSet
getResultSet(PreparedStatement ps)
protected PreparedStatement
getStatement()
boolean
hasOpenResources()
Connection
openConnection()
String
openResourceStatsAsString()
CallableStatement
prepareBatchCallableStatement(String sql)
PreparedStatement
prepareBatchStatement(String sql)
CallableStatement
prepareCallableQueryStatement(String sql, boolean scrollable, ScrollMode scrollMode)
CallableStatement
prepareCallableStatement(String sql)
PreparedStatement
prepareQueryStatement(String sql, boolean scrollable, ScrollMode scrollMode)
PreparedStatement
prepareSelectStatement(String sql)
PreparedStatement
prepareStatement(String sql)
PreparedStatement
prepareStatement(String sql, String[] columnNames)
PreparedStatement
prepareStatement(String sql, boolean getGeneratedKeys)
void
setTransactionTimeout(int seconds)
void
unsetTransactionTimeout()

Field Details

log

protected static final Logger log

Constructor Details

AbstractBatcher

public AbstractBatcher(ConnectionManager connectionManager,
                       Interceptor interceptor)

Method Details

abortBatch

public void abortBatch(SQLException sqle)
Specified by:
abortBatch in interface Batcher

cancelLastQuery

public void cancelLastQuery()
            throws HibernateException
Specified by:
cancelLastQuery in interface Batcher

closeConnection

public void closeConnection(Connection conn)
            throws HibernateException
Specified by:
closeConnection in interface Batcher

closeQueryStatement

public void closeQueryStatement(PreparedStatement ps,
                                ResultSet rs)
            throws SQLException
Specified by:
closeQueryStatement in interface Batcher

closeStatement

public void closeStatement(PreparedStatement ps)
            throws SQLException
Specified by:
closeStatement in interface Batcher

closeStatements

public void closeStatements()
Actually releases the batcher, allowing it to cleanup internally held resources.
Specified by:
closeStatements in interface Batcher

doExecuteBatch

protected abstract void doExecuteBatch(PreparedStatement ps)
            throws SQLException,
                   HibernateException

executeBatch

public void executeBatch()
            throws HibernateException
Specified by:
executeBatch in interface Batcher

getFactory

protected SessionFactoryImplementor getFactory()

getResultSet

public ResultSet getResultSet(CallableStatement ps,
                              Dialect dialect)
            throws SQLException
Specified by:
getResultSet in interface Batcher

getResultSet

public ResultSet getResultSet(PreparedStatement ps)
            throws SQLException
Specified by:
getResultSet in interface Batcher

getStatement

protected PreparedStatement getStatement()

hasOpenResources

public boolean hasOpenResources()
Specified by:
hasOpenResources in interface Batcher

openConnection

public Connection openConnection()
            throws HibernateException
Specified by:
openConnection in interface Batcher

openResourceStatsAsString

public String openResourceStatsAsString()
Specified by:
openResourceStatsAsString in interface Batcher

prepareBatchCallableStatement

public CallableStatement prepareBatchCallableStatement(String sql)
            throws SQLException,
                   HibernateException
Specified by:
prepareBatchCallableStatement in interface Batcher

prepareBatchStatement

public PreparedStatement prepareBatchStatement(String sql)
            throws SQLException,
                   HibernateException
Specified by:
prepareBatchStatement in interface Batcher

prepareCallableQueryStatement

public CallableStatement prepareCallableQueryStatement(String sql,
                                                       boolean scrollable,
                                                       ScrollMode scrollMode)
            throws SQLException,
                   HibernateException
Specified by:
prepareCallableQueryStatement in interface Batcher

prepareCallableStatement

public CallableStatement prepareCallableStatement(String sql)
            throws SQLException,
                   HibernateException
Specified by:
prepareCallableStatement in interface Batcher

prepareQueryStatement

public PreparedStatement prepareQueryStatement(String sql,
                                               boolean scrollable,
                                               ScrollMode scrollMode)
            throws SQLException,
                   HibernateException
Specified by:
prepareQueryStatement in interface Batcher

prepareSelectStatement

public PreparedStatement prepareSelectStatement(String sql)
            throws SQLException,
                   HibernateException
Specified by:
prepareSelectStatement in interface Batcher

prepareStatement

public PreparedStatement prepareStatement(String sql)
            throws SQLException,
                   HibernateException
Specified by:
prepareStatement in interface Batcher

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          String[] columnNames)
            throws SQLException,
                   HibernateException
Specified by:
prepareStatement in interface Batcher

prepareStatement

public PreparedStatement prepareStatement(String sql,
                                          boolean getGeneratedKeys)
            throws SQLException,
                   HibernateException
Specified by:
prepareStatement in interface Batcher

setTransactionTimeout

public void setTransactionTimeout(int seconds)
Specified by:
setTransactionTimeout in interface Batcher

unsetTransactionTimeout

public void unsetTransactionTimeout()
Specified by:
unsetTransactionTimeout in interface Batcher