public class StatementGenerator extends Object
To log generated statement string, setup logging for this class to debug level.
Constructor and Description |
---|
StatementGenerator() |
Modifier and Type | Method and Description |
---|---|
CallableStatement |
createPreparedCall(Connection connection,
Statement statement,
Map<String,Object> parameters,
Set<String> acceptNullParameters)
Creates callable statement for given JDBC connection and parameters.
|
PreparedStatement |
createPreparedStatement(Connection connection,
Statement statement,
Map<String,Object> parameters,
Set<String> acceptNullParameters,
Long offset,
Long limit,
boolean withKeys)
Creates prepared statement for given JDBC connection and parameters.
|
PreparedStatement |
createPreparedStatement(Connection connection,
Statement statement,
Map<String,Object> parameters,
Set<String> acceptNullParameters,
Long offset,
Long limit,
String[] keysToGenerate)
Creates prepared statement for given JDBC connection and parameters.
|
String |
generateJdbcStatement(Statement statement,
Map<String,Object> parameters,
Set<String> acceptNullParameters,
List<Object> jdbcParams,
Long offset,
Long limit)
Creates JDBC-like statement string.
|
String |
generateStatement(Statement statement,
Map<String,Object> parameters,
Set<String> acceptNullParameters,
Long offset,
Long limit)
Creates statement string.
|
void |
setDialect(DatabaseDialect dialect)
Sets database dialect to use.
|
public PreparedStatement createPreparedStatement(Connection connection, Statement statement, Map<String,Object> parameters, Set<String> acceptNullParameters, Long offset, Long limit, boolean withKeys) throws StatementException
connection
- JDBC connectionstatement
- statement to processparameters
- parameters to useacceptNullParameters
- names of parameters accepting null valuesoffset
- result set offsetlimit
- result set limitwithKeys
- if true prepared statement will return auto-generated keysStatementException
Connection.prepareStatement(String, int)
public PreparedStatement createPreparedStatement(Connection connection, Statement statement, Map<String,Object> parameters, Set<String> acceptNullParameters, Long offset, Long limit, String[] keysToGenerate) throws StatementException
connection
- JDBC connectionstatement
- statement to processparameters
- parameters to useacceptNullParameters
- names of parameters accepting null valuesoffset
- result set offsetlimit
- result set limitkeysToGenerate
- list of keys to generateStatementException
Connection.prepareStatement(String, String[])
public CallableStatement createPreparedCall(Connection connection, Statement statement, Map<String,Object> parameters, Set<String> acceptNullParameters) throws StatementException
connection
- JDBC connectionstatement
- statement to processparameters
- parameters to useacceptNullParameters
- names of parameters accepting null valuesStatementException
public String generateJdbcStatement(Statement statement, Map<String,Object> parameters, Set<String> acceptNullParameters, List<Object> jdbcParams, Long offset, Long limit)
This method is useful when standard createPreparedCall(Connection, Statement, Map, Set)
and
#createPreparedStatement(Connection, Statement, Map, Set, boolean)
are not enough. It returns generated
statement string with replaced SQL parameters by '?' and parameter values are put into jdbcParams list.
statement
- statement to processparameters
- parameters to useacceptNullParameters
- names of parameters accepting null valuesjdbcParams
- list where will be generated JDBC parametersoffset
- result set offsetlimit
- result set limit#generateStatement(Statement, Map, Set)
public String generateStatement(Statement statement, Map<String,Object> parameters, Set<String> acceptNullParameters, Long offset, Long limit) throws ScriptException
Statement is processed row by row. Row is omitted if:
All replacement parameters are replaced by value. If there's no parameter with appropriate name, replacement is left without change.
This method is could be used for generating JPA statements.
statement
- statement to processparameters
- parameters to useacceptNullParameters
- names of parameters accepting null valuesoffset
- result set offsetlimit
- result set limitScriptException
public void setDialect(DatabaseDialect dialect)
dialect
- database dialectCopyright © 2014–2015 Vracon s.r.o.. All rights reserved.