Top Description Inners Fields Constructors Methods
org.hibernate.engine.jdbc.internal

pack-priv Class StatementPreparerImpl

extends Object
implements StatementPreparer
Class Inheritance
All Implemented Interfaces
org.hibernate.engine.jdbc.spi.StatementPreparer
Imports
java.sql.Connection, .PreparedStatement, .ResultSet, .SQLException, .Statement, org.hibernate.AssertionFailure, .ScrollMode, org.hibernate.boot.spi.SessionFactoryOptions, org.hibernate.engine.jdbc.spi.JdbcServices, .SqlExceptionHelper, .StatementPreparer, org.hibernate.resource.jdbc.spi.JdbcObserver, .LogicalConnectionImplementor

Standard implementation of StatementPreparer
Authors
Steve Ebersole, Lukasz Antoniak (lukasz dot antoniak at gmail dot com), Brett Meyer

Nested and Inner Type Summary

Modifier and TypeClass and Description
private abstract class
private abstract class

Field Summary

Modifier and TypeField and Description
private final JdbcCoordinatorImpl
private final JdbcServices

Constructor Summary

AccessConstructor and Description
pack-priv
StatementPreparerImpl(JdbcCoordinatorImpl
The JdbcCoordinatorImpl
jdbcCoordinator
,
JdbcServices jdbcServices)

Construct a StatementPreparerImpl

Method Summary

Modifier and TypeMethod and Description
private StatementPreparerImpl.StatementPreparationTemplate
buildPreparedStatementPreparationTemplate(String sql, final boolean isCallable)

private void
protected final Connection
public Statement
protected final LogicalConnectionImplementor
public PreparedStatement
prepareQueryStatement(String
The SQL the statement to be prepared
sql
,
final boolean
Whether to prepare as a callable statement.
isCallable
,
final ScrollMode
(optional) scroll mode to be applied to the resulting result set; may be null to indicate no scrolling should be applied.
scrollMode
)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareQueryStatement.

Get a prepared statement for use in loading / querying.
public PreparedStatement
prepareStatement(String
The SQL the statement to be prepared
sql
)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare a statement.
public PreparedStatement
prepareStatement(String
The SQL the statement to be prepared
sql
,
final boolean
Whether to prepare as a callable statement.
isCallable
)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare a statement.
public PreparedStatement
prepareStatement(String
The INSERT SQL
sql
,
final int
The autoGeneratedKeys flag
autoGeneratedKeys
)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare an INSERT statement, specifying how auto-generated (by the database) keys should be handled.
public PreparedStatement
prepareStatement(String
- the SQL for the statement to be prepared
sql
,
final String[]
The name of the columns to be returned in the generated keys result set.
columnNames
)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare an INSERT statement, specifying columns which are auto-generated values to be returned.
private void
protected final SessionFactoryOptions
protected final SqlExceptionHelper
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

jdbcCoordinatorback to summary
private final JdbcCoordinatorImpl jdbcCoordinator
jdbcServicesback to summary
private final JdbcServices jdbcServices

Constructor Detail

StatementPreparerImplback to summary
pack-priv StatementPreparerImpl(JdbcCoordinatorImpl jdbcCoordinator, JdbcServices jdbcServices)

Construct a StatementPreparerImpl

Parameters
jdbcCoordinator:JdbcCoordinatorImpl

The JdbcCoordinatorImpl

Method Detail

buildPreparedStatementPreparationTemplateback to summary
private StatementPreparerImpl.StatementPreparationTemplate buildPreparedStatementPreparationTemplate(String sql, final boolean isCallable)
checkAutoGeneratedKeysSupportEnabledback to summary
private void checkAutoGeneratedKeysSupportEnabled()
connectionback to summary
protected final Connection connection()
createStatementback to summary
public Statement createStatement()

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.createStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.createStatement.

Create a statement.

Returns:Statement

the statement

Annotations
@Override
logicalConnectionback to summary
protected final LogicalConnectionImplementor logicalConnection()
prepareQueryStatementback to summary
public PreparedStatement prepareQueryStatement(String sql, final boolean isCallable, final ScrollMode scrollMode)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareQueryStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.prepareQueryStatement.

Get a prepared statement for use in loading / querying.

Parameters
sql:String

The SQL the statement to be prepared

isCallable:boolean

Whether to prepare as a callable statement.

scrollMode:ScrollMode

(optional) scroll mode to be applied to the resulting result set; may be null to indicate no scrolling should be applied.

Returns:PreparedStatement

the prepared statement

Annotations
@Override
prepareStatementback to summary
public PreparedStatement prepareStatement(String sql)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare a statement.

Parameters
sql:String

The SQL the statement to be prepared

Returns:PreparedStatement

the prepared statement

Annotations
@Override
prepareStatementback to summary
public PreparedStatement prepareStatement(String sql, final boolean isCallable)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare a statement.

Parameters
sql:String

The SQL the statement to be prepared

isCallable:boolean

Whether to prepare as a callable statement.

Returns:PreparedStatement

the prepared statement

Annotations
@Override
prepareStatementback to summary
public PreparedStatement prepareStatement(String sql, final int autoGeneratedKeys)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare an INSERT statement, specifying how auto-generated (by the database) keys should be handled. Really this is a boolean, but JDBC opted to define it instead using 2 int constants:

Generated keys are accessed afterwards via java.sql.PreparedStatement#getGeneratedKeys
Parameters
sql:String

The INSERT SQL

autoGeneratedKeys:int

The autoGeneratedKeys flag

Returns:PreparedStatement

the prepared statement

Annotations
@Override
prepareStatementback to summary
public PreparedStatement prepareStatement(String sql, final String[] columnNames)

Implements org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Doc from org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement.

Prepare an INSERT statement, specifying columns which are auto-generated values to be returned. Generated keys are accessed afterwards via java.sql.PreparedStatement#getGeneratedKeys

Parameters
sql:String

- the SQL for the statement to be prepared

columnNames:String[]

The name of the columns to be returned in the generated keys result set.

Returns:PreparedStatement

the prepared statement

Annotations
@Override
setStatementFetchSizeback to summary
private void setStatementFetchSize(PreparedStatement statement) throws SQLException
settingsback to summary
protected final SessionFactoryOptions settings()
sqlExceptionHelperback to summary
protected final SqlExceptionHelper sqlExceptionHelper()
org.hibernate.engine.jdbc.internal back to summary

private abstract Class StatementPreparerImpl.QueryStatementPreparationTemplate

extends StatementPreparationTemplate
Class Inheritance

Field Summary

Inherited from org.hibernate.engine.jdbc.internal.StatementPreparerImpl.StatementPreparationTemplate:
sql

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public void
Inherited from org.hibernate.engine.jdbc.internal.StatementPreparerImpl.StatementPreparationTemplate:
doPrepareprepareStatement

Constructor Detail

QueryStatementPreparationTemplateback to summary
protected QueryStatementPreparationTemplate(String sql)

Method Detail

postProcessback to summary
public void postProcess(PreparedStatement preparedStatement) throws SQLException

Overrides org.hibernate.engine.jdbc.internal.StatementPreparerImpl.StatementPreparationTemplate.postProcess.

org.hibernate.engine.jdbc.internal back to summary

private abstract Class StatementPreparerImpl.StatementPreparationTemplate

extends Object
Class Inheritance
  • java.lang.Object
  • org.hibernate.engine.jdbc.internal.StatementPreparerImpl.StatementPreparationTemplate
Known Direct Subclasses
org.hibernate.engine.jdbc.internal.StatementPreparerImpl.QueryStatementPreparationTemplate

Field Summary

Modifier and TypeField and Description
protected final String

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
protected abstract PreparedStatement
public void
postProcess(PreparedStatement preparedStatement)

public PreparedStatement
private void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

sqlback to summary
protected final String sql

Constructor Detail

StatementPreparationTemplateback to summary
protected StatementPreparationTemplate(String incomingSql)

Method Detail

doPrepareback to summary
protected abstract PreparedStatement doPrepare() throws SQLException
postProcessback to summary
public void postProcess(PreparedStatement preparedStatement) throws SQLException
prepareStatementback to summary
public PreparedStatement prepareStatement()
setStatementTimeoutback to summary
private void setStatementTimeout(PreparedStatement preparedStatement) throws SQLException