Package org.apache.cayenne.access.jdbc
Class BatchAction
java.lang.Object
org.apache.cayenne.access.jdbc.BaseSQLAction
org.apache.cayenne.access.jdbc.BatchAction
- All Implemented Interfaces:
SQLAction
- Direct Known Subclasses:
PostgresBatchAction
,SQLServerBatchAction
public class BatchAction extends BaseSQLAction
- Since:
- 1.2
-
Field Summary
Fields Modifier and Type Field Description protected RowDescriptor
keyRowDescriptor
protected BatchQuery
query
protected boolean
runningAsBatch
Fields inherited from class org.apache.cayenne.access.jdbc.BaseSQLAction
dataNode
-
Constructor Summary
Constructors Constructor Description BatchAction(BatchQuery query, DataNode dataNode, boolean runningAsBatch)
-
Method Summary
Modifier and Type Method Description protected BatchTranslator
createTranslator()
BatchQuery
getQuery()
protected boolean
hasGeneratedKeys()
Returns whether BatchQuery generates any keys.void
performAction(Connection connection, OperationObserver observer)
Executes a query using a strategy defined by the implementation.protected PreparedStatement
prepareStatement(Connection connection, String queryStr, DbAdapter adapter, boolean generatedKeys)
protected void
processGeneratedKeys(Statement statement, OperationObserver observer, BatchQueryRow row)
Implements generated keys extraction supported in JDBC 3.0 specification.protected void
runAsBatch(Connection con, BatchTranslator translator, OperationObserver delegate)
protected void
runAsIndividualQueries(Connection connection, BatchTranslator translator, OperationObserver delegate, boolean generatesKeys)
Executes batch as individual queries over the same prepared statement.Methods inherited from class org.apache.cayenne.access.jdbc.BaseSQLAction
getInMemoryOffset, readResultSet
-
Field Details
-
runningAsBatch
protected boolean runningAsBatch -
query
-
keyRowDescriptor
-
-
Constructor Details
-
BatchAction
- Since:
- 4.0
-
-
Method Details
-
getQuery
- Returns:
- Query which originated this action
-
performAction
public void performAction(Connection connection, OperationObserver observer) throws SQLException, ExceptionDescription copied from interface:SQLAction
Executes a query using a strategy defined by the implementation.- Throws:
SQLException
Exception
-
createTranslator
-
runAsBatch
protected void runAsBatch(Connection con, BatchTranslator translator, OperationObserver delegate) throws SQLException, Exception- Throws:
SQLException
Exception
-
runAsIndividualQueries
protected void runAsIndividualQueries(Connection connection, BatchTranslator translator, OperationObserver delegate, boolean generatesKeys) throws SQLException, ExceptionExecutes batch as individual queries over the same prepared statement.- Throws:
SQLException
Exception
-
prepareStatement
protected PreparedStatement prepareStatement(Connection connection, String queryStr, DbAdapter adapter, boolean generatedKeys) throws SQLException- Throws:
SQLException
-
hasGeneratedKeys
protected boolean hasGeneratedKeys()Returns whether BatchQuery generates any keys. -
processGeneratedKeys
protected void processGeneratedKeys(Statement statement, OperationObserver observer, BatchQueryRow row) throws SQLExceptionImplements generated keys extraction supported in JDBC 3.0 specification.- Throws:
SQLException
- Since:
- 4.0
-