public class QueryRunner
extends java.lang.Object
ResultSet
s. This class is thread safe.ResultSetHandler
Constructor and Description |
---|
QueryRunner()
Constructor for QueryRunner.
|
QueryRunner(javax.sql.DataSource ds)
Constructor for QueryRunner.
|
Modifier and Type | Method and Description |
---|---|
int[] |
batch(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[][] params)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
int[] |
batch(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[][] params,
int[] paramTypes)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
int[] |
batch(java.lang.String sql,
java.lang.Object[][] params)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
int[] |
batch(java.lang.String sql,
java.lang.Object[][] params,
int[] paramTypes)
Execute a batch of SQL INSERT, UPDATE, or DELETE queries.
|
javax.sql.DataSource |
getDataSource()
Returns the
DataSource this runner is using. |
<T> T |
query(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[] params,
int[] paramTypes,
ResultSetHandler<T> rsh)
Execute an SQL SELECT query with replacement parameters.
|
<T> T |
query(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[] params,
ResultSetHandler<T> rsh)
Execute an SQL SELECT query with replacement parameters.
|
<T> T |
query(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object param,
ResultSetHandler<T> rsh)
Execute an SQL SELECT query with a single replacement parameter.
|
<T> T |
query(java.sql.Connection conn,
java.lang.String sql,
ResultSetHandler<T> rsh)
Execute an SQL SELECT query without any replacement parameters.
|
<T> T |
query(java.lang.String sql,
java.lang.Object[] params,
int[] paramTypes,
ResultSetHandler<T> rsh)
Executes the given SELECT SQL query and returns a result object.
|
<T> T |
query(java.lang.String sql,
java.lang.Object[] params,
ResultSetHandler<T> rsh)
Executes the given SELECT SQL query and returns a result object.
|
<T> T |
query(java.lang.String sql,
java.lang.Object param,
ResultSetHandler<T> rsh)
Executes the given SELECT SQL with a single replacement parameter.
|
<T> T |
query(java.lang.String sql,
ResultSetHandler<T> rsh)
Executes the given SELECT SQL without any replacement parameters.
|
void |
setDataSource(javax.sql.DataSource dataSource)
Sets the
DataSource this runner will use to get
database connections from. |
int |
update(java.sql.Connection conn,
java.lang.String sql)
Execute an SQL INSERT, UPDATE, or DELETE query without replacement
parameters.
|
int |
update(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object param)
Execute an SQL INSERT, UPDATE, or DELETE query with a single replacement
parameter.
|
int |
update(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[] params)
Execute an SQL INSERT, UPDATE, or DELETE query.
|
int |
update(java.sql.Connection conn,
java.lang.String sql,
java.lang.Object[] params,
int[] paramTypes)
Execute an SQL INSERT, UPDATE, or DELETE query.
|
int |
update(java.lang.String sql)
Executes the given INSERT, UPDATE, or DELETE SQL statement without
any replacement parameters.
|
int |
update(java.lang.String sql,
java.lang.Object param)
Executes the given INSERT, UPDATE, or DELETE SQL statement with
a single replacement parameter.
|
int |
update(java.lang.String sql,
java.lang.Object[] params)
Executes the given INSERT, UPDATE, or DELETE SQL statement.
|
int |
update(java.lang.String sql,
java.lang.Object[] params,
int[] paramTypes)
Executes the given INSERT, UPDATE, or DELETE SQL statement.
|
public QueryRunner()
public QueryRunner(javax.sql.DataSource ds)
Connection
parameter will retrieve connections from this
DataSource
.ds
- The DataSource
to retrieve connections from.public int[] batch(java.sql.Connection conn, java.lang.String sql, java.lang.Object[][] params) throws java.sql.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.java.sql.SQLException
- if a database access error occurspublic int[] batch(java.sql.Connection conn, java.lang.String sql, java.lang.Object[][] params, int[] paramTypes) throws java.sql.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.paramTypes
- Query replacement parameters types; null
is a valid
value to pass in.java.sql.SQLException
- if a database access error occurspublic int[] batch(java.lang.String sql, java.lang.Object[][] params) throws java.sql.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.java.sql.SQLException
- if a database access error occurspublic int[] batch(java.lang.String sql, java.lang.Object[][] params, int[] paramTypes) throws java.sql.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.paramTypes
- Query replacement parameters types; null
is a valid
value to pass in.java.sql.SQLException
- if a database access error occurspublic javax.sql.DataSource getDataSource()
DataSource
this runner is using.
QueryRunner
methods always call this method to get the
DataSource
so subclasses can provide specialized
behavior.public <T> T query(java.sql.Connection conn, java.lang.String sql, java.lang.Object param, ResultSetHandler<T> rsh) throws java.sql.SQLException
conn
- 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.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.sql.Connection conn, java.lang.String sql, java.lang.Object[] params, ResultSetHandler<T> rsh) throws java.sql.SQLException
conn
- 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.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.sql.Connection conn, java.lang.String sql, java.lang.Object[] params, int[] paramTypes, ResultSetHandler<T> rsh) throws java.sql.SQLException
conn
- The connection to execute the query in.sql
- The query to execute.params
- The replacement parameters.paramTypes
- The query replacement parameter types.rsh
- The handler that converts the results into an object.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.sql.Connection conn, java.lang.String sql, ResultSetHandler<T> rsh) throws java.sql.SQLException
conn
- The connection to execute the query in.sql
- The query to execute.rsh
- The handler that converts the results into an object.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.lang.String sql, java.lang.Object param, ResultSetHandler<T> rsh) throws java.sql.SQLException
Connection
is retrieved from the
DataSource
set in the constructor.sql
- The SQL statement to execute.param
- The replacement parameter.rsh
- The handler used to create the result object from
the ResultSet
.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.lang.String sql, java.lang.Object[] params, ResultSetHandler<T> rsh) throws java.sql.SQLException
Connection
is retrieved from the
DataSource
set in the constructor.sql
- 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
.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.lang.String sql, java.lang.Object[] params, int[] paramTypes, ResultSetHandler<T> rsh) throws java.sql.SQLException
Connection
is retrieved from the
DataSource
set in the constructor.sql
- The SQL statement to execute.params
- Initialize the PreparedStatement's IN parameters with
this array.paramTypes
- The query replacement parameter types.rsh
- The handler used to create the result object from
the ResultSet
.java.sql.SQLException
- if a database access error occurspublic <T> T query(java.lang.String sql, ResultSetHandler<T> rsh) throws java.sql.SQLException
Connection
is retrieved from the
DataSource
set in the constructor.sql
- The SQL statement to execute.rsh
- The handler used to create the result object from
the ResultSet
.java.sql.SQLException
- if a database access error occurspublic void setDataSource(javax.sql.DataSource dataSource)
DataSource
this runner will use to get
database connections from. This should be called after creating a
runner with the default constructor if you intend to use the
execute methods without passing in a Connection
.dataSource
- The DataSource to use.public int update(java.sql.Connection conn, java.lang.String sql) throws java.sql.SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.java.sql.SQLException
- if a database access error occurspublic int update(java.sql.Connection conn, java.lang.String sql, java.lang.Object param) throws java.sql.SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.param
- The replacement parameter.java.sql.SQLException
- if a database access error occurspublic int update(java.sql.Connection conn, java.lang.String sql, java.lang.Object[] params) throws java.sql.SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.params
- The query replacement parameters.java.sql.SQLException
- if a database access error occurspublic int update(java.sql.Connection conn, java.lang.String sql, java.lang.Object[] params, int[] paramTypes) throws java.sql.SQLException
conn
- The connection to use to run the query.sql
- The SQL to execute.params
- The query replacement parameters.paramTypes
- The query replacement parameter types.java.sql.SQLException
- if a database access error occurspublic int update(java.lang.String sql) throws java.sql.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.java.sql.SQLException
- if a database access error occurspublic int update(java.lang.String sql, java.lang.Object param) throws java.sql.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.java.sql.SQLException
- if a database access error occurspublic int update(java.lang.String sql, java.lang.Object[] params) throws java.sql.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.java.sql.SQLException
- if a database access error occurspublic int update(java.lang.String sql, java.lang.Object[] params, int[] paramTypes) throws java.sql.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.paramTypes
- The query replacement parameter types.java.sql.SQLException
- if a database access error occurs