public abstract class JdbcTestUtils extends Object
JdbcTestUtils is a collection of JDBC related utility functions
intended to simplify standard database testing scenarios.JdbcTemplate,
ScriptUtils,
ResourceDatabasePopulator,
DatabasePopulatorUtils| Constructor and Description |
|---|
JdbcTestUtils() |
| Modifier and Type | Method and Description |
|---|---|
static int |
countRowsInTable(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName)
Count the rows in the given table.
|
static int |
countRowsInTableWhere(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName,
String whereClause)
Count the rows in the given table, using the provided
WHERE clause. |
static int |
deleteFromTables(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String... tableNames)
Delete all rows from the specified tables.
|
static int |
deleteFromTableWhere(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName,
String whereClause,
Object... args)
Delete rows from the given table, using the provided
WHERE clause. |
static void |
dropTables(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String... tableNames)
Drop the specified tables.
|
public static int countRowsInTable(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName)
jdbcTemplate - the JdbcTemplate with which to perform JDBC operationstableName - name of the table to count rows inpublic static int countRowsInTableWhere(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName,
String whereClause)
WHERE clause.
If the provided WHERE clause contains text, it will be prefixed
with " WHERE " and then appended to the generated SELECT
statement. For example, if the provided table name is "person" and
the provided where clause is "name = 'Bob' and age > 25", the
resulting SQL statement to execute will be
"SELECT COUNT(0) FROM person WHERE name = 'Bob' and age > 25".
jdbcTemplate - the JdbcTemplate with which to perform JDBC operationstableName - the name of the table to count rows inwhereClause - the WHERE clause to append to the queryWHERE clausepublic static int deleteFromTables(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String... tableNames)
jdbcTemplate - the JdbcTemplate with which to perform JDBC operationstableNames - the names of the tables to delete frompublic static int deleteFromTableWhere(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String tableName,
String whereClause,
Object... args)
WHERE clause.
If the provided WHERE clause contains text, it will be prefixed
with " WHERE " and then appended to the generated DELETE
statement. For example, if the provided table name is "person" and
the provided where clause is "name = 'Bob' and age > 25", the
resulting SQL statement to execute will be
"DELETE FROM person WHERE name = 'Bob' and age > 25".
As an alternative to hard-coded values, the "?" placeholder can
be used within the WHERE clause, binding to the given arguments.
jdbcTemplate - the JdbcTemplate with which to perform JDBC operationstableName - the name of the table to delete rows fromwhereClause - the WHERE clause to append to the queryargs - arguments to bind to the query (leaving it to the PreparedStatement
to guess the corresponding SQL type); may also contain SqlParameterValue
objects which indicate not only the argument value but also the SQL type and
optionally the scale.public static void dropTables(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
String... tableNames)
jdbcTemplate - the JdbcTemplate with which to perform JDBC operationstableNames - the names of the tables to drop