public class QueryRunner extends AbstractQueryRunner
ResultSet
s. This class is thread safe.ResultSetHandler
ds
Constructor and Description |
---|
QueryRunner()
Constructor for QueryRunner.
|
QueryRunner(boolean pmdKnownBroken)
Constructor for QueryRunner that controls the use of
ParameterMetaData . |
QueryRunner(DataSource ds)
Constructor for QueryRunner that takes a
DataSource to use. |
QueryRunner(DataSource ds,
boolean pmdKnownBroken)
Constructor for QueryRunner that takes a
DataSource and controls the use of ParameterMetaData . |
QueryRunner(DataSource ds,
boolean pmdKnownBroken,
StatementConfiguration stmtConfig)
Constructor for QueryRunner that takes a
DataSource , a StatementConfiguration , and
controls the use of ParameterMetaData . |
QueryRunner(DataSource ds,
StatementConfiguration stmtConfig)
Constructor for QueryRunner that takes a
DataSource to use and a StatementConfiguration . |
QueryRunner(StatementConfiguration stmtConfig)
Constructor for QueryRunner that takes a
StatementConfiguration to configure statements when
preparing them. |
Modifier and Type | Method and Description |
---|---|
int[] |
batch(Connection conn,
String sql,
Object[][] params)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
int[] |
batch(String sql,
Object[][] params)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
int |
execute(Connection conn,
String sql,
Object... params)
Execute an SQL statement, including a stored procedure call, which does
not return any result sets.
|
<T> List<T> |
execute(Connection conn,
String sql,
ResultSetHandler<T> rsh,
Object... params)
Execute an SQL statement, including a stored procedure call, which
returns one or more result sets.
|
int |
execute(String sql,
Object... params)
Execute an SQL statement, including a stored procedure call, which does
not return any result sets.
|
<T> List<T> |
execute(String sql,
ResultSetHandler<T> rsh,
Object... params)
Execute an SQL statement, including a stored procedure call, which
returns one or more result sets.
|
<T> T |
insert(Connection conn,
String sql,
ResultSetHandler<T> rsh)
Execute an SQL INSERT query without replacement parameters.
|
<T> T |
insert(Connection conn,
String sql,
ResultSetHandler<T> rsh,
Object... params)
Execute an SQL INSERT query.
|
<T> T |
insert(String sql,
ResultSetHandler<T> rsh)
Executes the given INSERT SQL without any replacement parameters.
|
<T> T |
insert(String sql,
ResultSetHandler<T> rsh,
Object... params)
Executes the given INSERT SQL statement.
|
<T> T |
insertBatch(Connection conn,
String sql,
ResultSetHandler<T> rsh,
Object[][] params)
Executes the given batch of INSERT SQL statements.
|
<T> T |
insertBatch(String sql,
ResultSetHandler<T> rsh,
Object[][] params)
Executes the given batch of INSERT SQL statements.
|
<T> T |
query(Connection conn,
String sql,
Object[] params,
ResultSetHandler<T> rsh)
Deprecated.
|
<T> T |
query(Connection conn,
String sql,
Object param,
ResultSetHandler<T> rsh)
Deprecated.
|
<T> T |
query(Connection conn,
String sql,
ResultSetHandler<T> rsh)
Execute an SQL SELECT query without any replacement parameters.
|
<T> T |
query(Connection conn,
String sql,
ResultSetHandler<T> rsh,
Object... params)
Execute an SQL SELECT query with replacement parameters.
|
<T> T |
query(String sql,
Object[] params,
ResultSetHandler<T> rsh)
Deprecated.
|
<T> T |
query(String sql,
Object param,
ResultSetHandler<T> rsh)
Deprecated.
|
<T> T |
query(String sql,
ResultSetHandler<T> rsh)
Executes the given SELECT SQL without any replacement parameters.
|
<T> T |
query(String sql,
ResultSetHandler<T> rsh,
Object... params)
Executes the given SELECT SQL query and returns a result object.
|
int |
update(Connection conn,
String sql)
Execute an SQL INSERT, UPDATE, or DELETE query without replacement
parameters.
|
int |
update(Connection conn,
String sql,
Object... params)
Execute an SQL INSERT, UPDATE, or DELETE query.
|
int |
update(Connection conn,
String sql,
Object param)
Execute an SQL INSERT, UPDATE, or DELETE query with a single replacement
parameter.
|
int |
update(String sql)
Executes the given INSERT, UPDATE, or DELETE SQL statement without
any replacement parameters.
|
int |
update(String sql,
Object... params)
Executes the given INSERT, UPDATE, or DELETE SQL statement.
|
int |
update(String sql,
Object param)
Executes the given INSERT, UPDATE, or DELETE SQL statement with
a single replacement parameter.
|
close, close, close, closeQuietly, closeQuietly, closeQuietly, fillStatement, fillStatement, fillStatementWithBean, fillStatementWithBean, getDataSource, getParameterMetaData, isPmdKnownBroken, prepareCall, prepareConnection, prepareStatement, prepareStatement, rethrow, wrap
public QueryRunner()
public QueryRunner(boolean pmdKnownBroken)
ParameterMetaData
.pmdKnownBroken
- Some drivers don't support ParameterMetaData.getParameterType(int)
;
if pmdKnownBroken
is set to true, we won't even try it; if false, we'll try it,
and if it breaks, we'll remember not to use it again.public QueryRunner(DataSource ds)
DataSource
to use.
Methods that do not take a Connection
parameter will retrieve connections from this
DataSource
.ds
- The DataSource
to retrieve connections from.public QueryRunner(DataSource ds, boolean pmdKnownBroken)
DataSource
and controls the use of ParameterMetaData
.
Methods that do not take a Connection
parameter will retrieve connections from this
DataSource
.ds
- The DataSource
to retrieve connections from.pmdKnownBroken
- Some drivers don't support ParameterMetaData.getParameterType(int)
;
if pmdKnownBroken
is set to true, we won't even try it; if false, we'll try it,
and if it breaks, we'll remember not to use it again.public QueryRunner(DataSource ds, boolean pmdKnownBroken, StatementConfiguration stmtConfig)
DataSource
, a StatementConfiguration
, and
controls the use of ParameterMetaData
. Methods that do not take a Connection
parameter
will retrieve connections from this DataSource
.ds
- The DataSource
to retrieve connections from.pmdKnownBroken
- Some drivers don't support ParameterMetaData.getParameterType(int)
;
if pmdKnownBroken
is set to true, we won't even try it; if false, we'll try it,
and if it breaks, we'll remember not to use it again.stmtConfig
- The configuration to apply to statements when they are prepared.public QueryRunner(DataSource ds, StatementConfiguration stmtConfig)
DataSource
to use and a StatementConfiguration
.
Methods that do not take a Connection
parameter will retrieve connections from this
DataSource
.ds
- The DataSource
to retrieve connections from.stmtConfig
- The configuration to apply to statements when they are prepared.public QueryRunner(StatementConfiguration stmtConfig)
StatementConfiguration
to configure statements when
preparing them.stmtConfig
- The configuration to apply to statements when they are prepared.public int[] batch(Connection conn, String sql, Object[][] params) throws SQLException
conn
- The Connection to use to run the query. The caller is
responsible for closing this Connection.sql
- The SQL to execute.params
- An array of query replacement parameters. Each row in
this array is one set of batch replacement values.SQLException
- if a database access error occurspublic int[] batch(String sql, Object[][] params) throws SQLException
Connection
is retrieved from the DataSource
set in the constructor. This Connection
must be in
auto-commit mode or the update will not be saved.sql
- The SQL to execute.params
- An array of query replacement parameters. Each row in
this array is one set of batch replacement values.SQLException
- if a database access error occurspublic int execute(Connection conn, String sql, Object... params) throws SQLException
OutParameter
will be
registered as OUT parameters.
Use this method when invoking a stored procedure with OUT parameters
that does not return any result sets. If you are not invoking a stored
procedure, or the stored procedure has no OUT parameters, consider using
update(java.sql.Connection, String, Object...)
.
If the stored procedure returns result sets, use
execute(java.sql.Connection, String, org.apache.commons.dbutils.ResultSetHandler, Object...)
.
conn
- The connection to use to run the query.sql
- The SQL to execute.params
- The query replacement parameters.SQLException
- if a database access error occurspublic <T> List<T> execute(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
OutParameter
will be
registered as OUT parameters.
Use this method when: a) running SQL statements that return multiple
result sets; b) invoking a stored procedure that return result
sets and OUT parameters. Otherwise you may wish to use
query(java.sql.Connection, String, org.apache.commons.dbutils.ResultSetHandler, Object...)
(if there are no OUT parameters) or
execute(java.sql.Connection, String, Object...)
(if there are no result sets).
T
- The type of object that the handler returnsconn
- The connection to use to run the query.sql
- The SQL to execute.rsh
- The result set handlerparams
- The query replacement parameters.SQLException
- if a database access error occurspublic int execute(String sql, Object... params) throws SQLException
OutParameter
will be
registered as OUT parameters.
Use this method when invoking a stored procedure with OUT parameters
that does not return any result sets. If you are not invoking a stored
procedure, or the stored procedure has no OUT parameters, consider using
update(String, Object...)
.
If the stored procedure returns result sets, use
execute(String, org.apache.commons.dbutils.ResultSetHandler, Object...)
.
The Connection
is retrieved from the DataSource
set in the constructor. This Connection
must be in
auto-commit mode or the update will not be saved.
sql
- The SQL statement to execute.params
- Initializes the CallableStatement's parameters (i.e. '?').SQLException
- if a database access error occurspublic <T> List<T> execute(String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
OutParameter
will be
registered as OUT parameters.
Use this method when: a) running SQL statements that return multiple
result sets; b) invoking a stored procedure that return result
sets and OUT parameters. Otherwise you may wish to use
query(String, org.apache.commons.dbutils.ResultSetHandler, Object...)
(if there are no OUT parameters) or
execute(String, Object...)
(if there are no result sets).
T
- The type of object that the handler returnssql
- The SQL to execute.rsh
- The result set handlerparams
- The query replacement parameters.SQLException
- if a database access error occurspublic <T> T insert(Connection conn, String sql, ResultSetHandler<T> rsh) throws SQLException
T
- The type of object that the handler returnsconn
- The connection to use to run the query.sql
- The SQL to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.SQLException
- if a database access error occurspublic <T> T insert(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
T
- The type of object that the handler returnsconn
- The connection to use to run the query.sql
- The SQL to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.params
- The query replacement parameters.SQLException
- if a database access error occurspublic <T> T insert(String sql, ResultSetHandler<T> rsh) throws SQLException
Connection
is retrieved from the
DataSource
set in the constructor.T
- The type of object that the handler returnssql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.SQLException
- if a database access error occurspublic <T> T insert(String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
Connection
is retrieved from the DataSource
set in the constructor. This Connection
must be in
auto-commit mode or the insert will not be saved.T
- The type of object that the handler returnssql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.params
- Initializes the PreparedStatement's IN (i.e. '?')SQLException
- if a database access error occurspublic <T> T insertBatch(Connection conn, String sql, ResultSetHandler<T> rsh, Object[][] params) throws SQLException
T
- The type of object that the handler returnsconn
- The connection to use to run the query.sql
- The SQL to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.params
- The query replacement parameters.SQLException
- if a database access error occurspublic <T> T insertBatch(String sql, ResultSetHandler<T> rsh, Object[][] params) throws SQLException
Connection
is retrieved from the DataSource
set in the constructor. This Connection
must be in
auto-commit mode or the insert will not be saved.T
- The type of object that the handler returnssql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
of auto-generated keys.params
- Initializes the PreparedStatement's IN (i.e. '?')SQLException
- if a database access error occurs@Deprecated public <T> T query(Connection conn, String sql, Object param, ResultSetHandler<T> rsh) throws SQLException
query(Connection, String, ResultSetHandler, Object...)
T
- The type of object that the handler returnsconn
- The connection to execute the query in.sql
- The query to execute.param
- The replacement parameter.rsh
- The handler that converts the results into an object.SQLException
- if a database access error occurs@Deprecated public <T> T query(Connection conn, String sql, Object[] params, ResultSetHandler<T> rsh) throws SQLException
query(Connection,String,ResultSetHandler,Object...)
insteadT
- The type of object that the handler returnsconn
- The connection to execute the query in.sql
- The query to execute.params
- The replacement parameters.rsh
- The handler that converts the results into an object.SQLException
- if a database access error occurspublic <T> T query(Connection conn, String sql, ResultSetHandler<T> rsh) throws SQLException
T
- The type of object that the handler returnsconn
- The connection to execute the query in.sql
- The query to execute.rsh
- The handler that converts the results into an object.SQLException
- if a database access error occurspublic <T> T query(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
T
- The type of object that the handler returnsconn
- The connection to execute the query in.sql
- The query to execute.rsh
- The handler that converts the results into an object.params
- The replacement parameters.SQLException
- if a database access error occurs@Deprecated public <T> T query(String sql, Object param, ResultSetHandler<T> rsh) throws SQLException
query(String, ResultSetHandler, Object...)
Connection
is retrieved from the
DataSource
set in the constructor.T
- The type of object that the handler returnssql
- The SQL statement to execute.param
- The replacement parameter.rsh
- The handler used to create the result object from
the ResultSet
.SQLException
- if a database access error occurs@Deprecated public <T> T query(String sql, Object[] params, ResultSetHandler<T> rsh) throws SQLException
query(String, ResultSetHandler, Object...)
Connection
is retrieved from the
DataSource
set in the constructor.T
- The type of object that the handler returnssql
- The SQL statement to execute.params
- Initialize the PreparedStatement's IN parameters with
this array.rsh
- The handler used to create the result object from
the ResultSet
.SQLException
- if a database access error occurspublic <T> T query(String sql, ResultSetHandler<T> rsh) throws SQLException
Connection
is retrieved from the
DataSource
set in the constructor.T
- The type of object that the handler returnssql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
.SQLException
- if a database access error occurspublic <T> T query(String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException
Connection
is retrieved from the
DataSource
set in the constructor.T
- The type of object that the handler returnssql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
.params
- Initialize the PreparedStatement's IN parameters with
this array.SQLException
- if a database access error occurspublic int update(Connection conn, String sql) throws SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.SQLException
- if a database access error occurspublic int update(Connection conn, String sql, Object param) throws SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.param
- The replacement parameter.SQLException
- if a database access error occurspublic int update(Connection conn, String sql, Object... params) throws SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.params
- The query replacement parameters.SQLException
- if a database access error occurspublic int update(String sql) throws SQLException
Connection
is retrieved
from the DataSource
set in the constructor. This
Connection
must be in auto-commit mode or the update will
not be saved.sql
- The SQL statement to execute.SQLException
- if a database access error occurspublic int update(String sql, Object param) throws SQLException
Connection
is
retrieved from the DataSource
set in the constructor.
This Connection
must be in auto-commit mode or the
update will not be saved.sql
- The SQL statement to execute.param
- The replacement parameter.SQLException
- if a database access error occurspublic int update(String sql, Object... params) throws SQLException
Connection
is retrieved from the DataSource
set in the constructor. This Connection
must be in
auto-commit mode or the update will not be saved.sql
- The SQL statement to execute.params
- Initializes the PreparedStatement's IN (i.e. '?')
parameters.SQLException
- if a database access error occursCopyright © 2002–2023 The Apache Software Foundation. All rights reserved.