Module org.eclipse.persistence.core
Class DynamicSQLBatchWritingMechanism
java.lang.Object
org.eclipse.persistence.internal.databaseaccess.BatchWritingMechanism
org.eclipse.persistence.internal.databaseaccess.DynamicSQLBatchWritingMechanism
- All Implemented Interfaces:
Serializable,Cloneable
INTERNAL:
DynamicSQLBatchWritingMechanism is a private class, used by the DatabaseAccessor. It provides the required behavior for batching statements, for write, with parameter binding turned off.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected longThis attribute is used to store the maximum length of all strings batched togetherprotected DatabaseCallThis variable is used to store the SQLStrings that are being batchedprotected booleanRecords if this batch uses optimistic locking.Fields inherited from class org.eclipse.persistence.internal.databaseaccess.BatchWritingMechanism
databaseAccessor, executionCount, maxBatchSize, queryTimeoutCache, statementCount -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappendCall(AbstractSession session, DatabaseCall dbCall) INTERNAL: This method is called by the DatabaseAccessor to add this statement to the list of statements being batched.voidclear()INTERNAL: This method is used to clear the batched statements without the need to execute the statements first This is used in the case of rollback.voidexecuteBatchedStatements(AbstractSession session) INTERNAL: This method is used by the DatabaseAccessor to execute and clear the batched statements in the case that a non batchable statement is being executedprotected PreparedStatementprepareBatchStatement(AbstractSession session) INTERNAL: This method is used to build the batch statement by concatenating the strings together.protected StatementINTERNAL: This method is used to build the batch statement for the JDBC2.0 specificationprotected voidswitchMechanisms(AbstractSession session, DatabaseCall dbCall) INTERNAL: This method is used to switch from this mechanism to the alternate automaticallyMethods inherited from class org.eclipse.persistence.internal.databaseaccess.BatchWritingMechanism
cacheQueryTimeout, clearCacheQueryTimeout, clone, getMaxBatchSize, initialize, setAccessor, setMaxBatchSize
-
Field Details
-
sqlStrings
This variable is used to store the SQLStrings that are being batched -
batchSize
protected long batchSizeThis attribute is used to store the maximum length of all strings batched together -
usesOptimisticLocking
protected boolean usesOptimisticLockingRecords if this batch uses optimistic locking. -
lastCallAppended
-
-
Constructor Details
-
DynamicSQLBatchWritingMechanism
-
-
Method Details
-
appendCall
INTERNAL: This method is called by the DatabaseAccessor to add this statement to the list of statements being batched. This call may result in the Mechanism executing the batched statements and possibly, switching out the mechanisms- Specified by:
appendCallin classBatchWritingMechanism
-
clear
public void clear()INTERNAL: This method is used to clear the batched statements without the need to execute the statements first This is used in the case of rollback.- Specified by:
clearin classBatchWritingMechanism
-
executeBatchedStatements
INTERNAL: This method is used by the DatabaseAccessor to execute and clear the batched statements in the case that a non batchable statement is being executed- Specified by:
executeBatchedStatementsin classBatchWritingMechanism
-
switchMechanisms
INTERNAL: This method is used to switch from this mechanism to the alternate automatically -
prepareBatchStatement
INTERNAL: This method is used to build the batch statement by concatenating the strings together.- Throws:
DatabaseException
-
prepareJDK12BatchStatement
INTERNAL: This method is used to build the batch statement for the JDBC2.0 specification- Throws:
DatabaseException
-