|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjodd.db.DbQuery
public class DbQuery
Encapsulates Statement
and all its operations.
It may be:
DbSession
;DbThreadSession
i.e. ThreadDbSessionHolder
.
Field Summary | |
---|---|
protected java.sql.Connection |
connection
|
static DbQueryMode |
DEFAULT_QUERY_MODE
Default DbQueryMode for all queries. |
protected int |
fetchSize
|
static boolean |
FORCE_PREPARED_STATEMENTS
If set to true all created statements will be prepared. |
protected DbQueryMode |
mode
|
protected java.sql.PreparedStatement |
preparedStatement
|
protected jodd.db.DbQueryParser |
query
|
protected java.util.Set<java.sql.ResultSet> |
resultSets
|
protected DbSession |
session
|
static DbSessionProvider |
SESSION_PROVIDER
|
protected java.lang.String |
sqlString
|
protected java.sql.Statement |
statement
|
protected static int |
totalOpenResultSetCount
|
Constructor Summary | |
---|---|
DbQuery(java.sql.Connection conn,
java.lang.String sqlString)
Creates new query, |
|
DbQuery(java.sql.Connection conn,
java.lang.String sqlString,
DbQueryMode mode)
Creates new query. |
|
DbQuery(DbSession session,
java.lang.String sqlString)
Creates a new query from DbSession . |
|
DbQuery(DbSession session,
java.lang.String sqlString,
DbQueryMode mode)
Creates a new query from DbSession . |
|
DbQuery(java.lang.String sqlString)
Creates a new query using SESSION_PROVIDER . |
|
DbQuery(java.lang.String sqlString,
DbQueryMode mode)
Creates a new query using SESSION_PROVIDER . |
Method Summary | |
---|---|
protected void |
checkActive()
|
void |
close()
Closes the query and all created results sets and detaches itself from session. |
void |
close(java.sql.ResultSet rs)
Closes single result set that was created by this query, It is not necessary to close result sets explicitly, since close() closes all created result sets. |
protected void |
closeQuery()
Closes a query. |
java.sql.ResultSet |
execute()
Executes query. |
long |
executeCount()
Special execute() for 'select count(*)' queries. |
long |
executeCount(boolean close)
|
long |
executeCountAndClose()
Executes count queries and closes afterwards. |
int |
executeUpdate()
Executes UPDATE, INSERT or DELETE queries. |
int |
executeUpdate(boolean closeQuery)
Executes UPDATE, INSERT or DELETE queries and optionally closes the query. |
int |
executeUpdateAndClose()
Executes UPDATE, INSERT or DELETE queries and closes query afterwards. |
int |
getOpenResultSetCount()
Returns number of created result sets that are still not explicitly closed. |
java.lang.String |
getQueryString()
Returns query sql string. |
DbSession |
getSession()
Returns DbSession used for creating this query. |
static int |
getTotalOpenResultSetCount()
Returns total number of open result sets. |
protected void |
init(java.sql.Connection connection,
java.lang.String sqlString,
DbQueryMode mode)
Initializes query. |
protected void |
init(java.lang.String sqlString)
|
boolean |
isActive()
Returns true if query is opened. |
boolean |
isClosed()
Returns true if query is closed. |
void |
reset()
Resets an used query, using the same connection, sql query string and query mode ,
Closes current statement and creates a new one. |
void |
setArray(int index,
java.sql.Array value)
|
void |
setArray(java.lang.String param,
java.sql.Array value)
|
void |
setBean(java.lang.String beanName,
java.util.Map parameters)
Sets bean parameters from map. |
void |
setBean(java.lang.String beanName,
java.lang.Object bean)
Sets bean parameters from bean. |
void |
setBigDecimal(int index,
java.math.BigDecimal value)
|
void |
setBigDecimal(java.lang.String param,
java.math.BigDecimal value)
|
void |
setBigInteger(int index,
java.math.BigInteger value)
|
void |
setBigInteger(java.lang.String param,
java.math.BigInteger value)
|
void |
setBlob(int index,
java.sql.Blob value)
|
void |
setBlob(java.lang.String param,
java.sql.Blob value)
|
void |
setBoolean(int index,
boolean value)
|
void |
setBoolean(int index,
java.lang.Boolean value)
|
void |
setBoolean(java.lang.String param,
boolean value)
|
void |
setBoolean(java.lang.String param,
java.lang.Boolean value)
|
void |
setByte(int index,
byte value)
|
void |
setByte(int index,
java.lang.Number value)
|
void |
setByte(java.lang.String param,
byte value)
|
void |
setByte(java.lang.String param,
java.lang.Number value)
|
void |
setBytes(int index,
byte[] value)
|
void |
setBytes(java.lang.String param,
byte[] value)
|
void |
setClob(int index,
java.sql.Clob value)
|
void |
setClob(java.lang.String param,
java.sql.Clob value)
|
void |
setDate(int index,
java.sql.Date value)
|
void |
setDate(java.lang.String param,
java.sql.Date value)
|
void |
setDouble(int index,
double value)
|
void |
setDouble(int index,
java.lang.Number value)
|
void |
setDouble(java.lang.String param,
double value)
|
void |
setDouble(java.lang.String param,
java.lang.Number value)
|
DbQuery |
setFetchSize(int rows)
Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed. |
void |
setFloat(int index,
float value)
|
void |
setFloat(int index,
java.lang.Number value)
|
void |
setFloat(java.lang.String param,
float value)
|
void |
setFloat(java.lang.String param,
java.lang.Number value)
|
void |
setInteger(int index,
int value)
|
void |
setInteger(int index,
java.lang.Number value)
|
void |
setInteger(java.lang.String param,
int value)
|
void |
setInteger(java.lang.String param,
java.lang.Number value)
|
void |
setLong(int index,
long value)
|
void |
setLong(int index,
java.lang.Number value)
|
void |
setLong(java.lang.String param,
long value)
|
void |
setLong(java.lang.String param,
java.lang.Number value)
|
DbQuery |
setMaxRows(int maxRows)
Sets the limit for the maximum number of rows that any ResultSet object can contain to the given number. |
void |
setNull(int index,
int type)
|
void |
setNull(java.lang.String param,
int value)
|
void |
setObject(int index,
java.lang.Object value)
|
void |
setObject(java.lang.String param,
java.lang.Object value)
|
void |
setParameters(java.util.Map<java.lang.String,?> parameters)
|
void |
setRef(int index,
java.sql.Ref value)
|
void |
setRef(java.lang.String param,
java.sql.Ref value)
|
void |
setShort(int index,
java.lang.Number value)
|
void |
setShort(int index,
short value)
|
void |
setShort(java.lang.String param,
java.lang.Number value)
|
void |
setShort(java.lang.String param,
short value)
|
void |
setString(int index,
java.lang.String value)
|
void |
setString(java.lang.String param,
java.lang.String value)
|
void |
setTime(int index,
java.sql.Time value)
|
void |
setTime(java.lang.String param,
java.sql.Time value)
|
void |
setTimestamp(int index,
java.sql.Timestamp value)
|
void |
setTimestamp(java.lang.String param,
java.sql.Timestamp value)
|
void |
setURL(int index,
java.net.URL value)
|
void |
setURL(java.lang.String param,
java.net.URL value)
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static boolean FORCE_PREPARED_STATEMENTS
true
all created statements will be prepared.
protected static int totalOpenResultSetCount
protected java.sql.Statement statement
protected java.sql.PreparedStatement preparedStatement
protected java.util.Set<java.sql.ResultSet> resultSets
protected DbQueryMode mode
protected jodd.db.DbQueryParser query
protected java.sql.Connection connection
protected java.lang.String sqlString
protected DbSession session
public static DbQueryMode DEFAULT_QUERY_MODE
DbQueryMode
for all queries.
public static DbSessionProvider SESSION_PROVIDER
protected int fetchSize
Constructor Detail |
---|
public DbQuery(java.sql.Connection conn, java.lang.String sqlString)
public DbQuery(java.sql.Connection conn, java.lang.String sqlString, DbQueryMode mode)
public DbQuery(DbSession session, java.lang.String sqlString, DbQueryMode mode)
DbSession
.
public DbQuery(DbSession session, java.lang.String sqlString)
DbSession
.
public DbQuery(java.lang.String sqlString, DbQueryMode mode)
SESSION_PROVIDER
.
public DbQuery(java.lang.String sqlString)
SESSION_PROVIDER
.
Method Detail |
---|
public static int getTotalOpenResultSetCount()
getOpenResultSetCount()
public java.lang.String getQueryString()
public java.lang.String toString()
toString
in class java.lang.Object
getQueryString()
protected void init(java.sql.Connection connection, java.lang.String sqlString, DbQueryMode mode)
protected void init(java.lang.String sqlString)
public void reset()
query mode
,
Closes current statement and creates a new one.
public boolean isClosed()
true
if query is closed.
public boolean isActive()
true
if query is opened.
protected void checkActive()
protected void closeQuery()
close()
public void close()
public void close(java.sql.ResultSet rs)
close()
closes all created result sets.
However, statement (e.g. query) remains open.
public DbSession getSession()
DbSession
used for creating this query.
If no session used, returns null
.
public DbQuery setFetchSize(int rows)
Statement.setFetchSize(int)
public DbQuery setMaxRows(int maxRows)
Statement.setMaxRows(int)
public java.sql.ResultSet execute()
close(java.sql.ResultSet)
оr implicitly, during close()
.
The fetch size is set before execution.
Statement.execute(String)
public int getOpenResultSetCount()
getTotalOpenResultSetCount()
public int executeUpdate()
Statement.executeUpdate(String)
public int executeUpdateAndClose()
Statement.executeUpdate(String)
public int executeUpdate(boolean closeQuery)
Statement.executeUpdate(String)
public long executeCount()
execute()
for 'select count(*)' queries.
Query is not closed after the execution.
It doesn't check if query is really a count query.
Before execution it sets fetch size to 1
.
If resultset returns zero rows, (what is very unlikely),
it returns -1
.
public long executeCountAndClose()
public long executeCount(boolean close)
public void setNull(int index, int type)
public void setNull(java.lang.String param, int value)
public void setInteger(int index, int value)
public void setInteger(java.lang.String param, int value)
public void setInteger(int index, java.lang.Number value)
public void setInteger(java.lang.String param, java.lang.Number value)
public void setBoolean(int index, boolean value)
public void setBoolean(java.lang.String param, boolean value)
public void setBoolean(int index, java.lang.Boolean value)
public void setBoolean(java.lang.String param, java.lang.Boolean value)
public void setLong(int index, long value)
public void setLong(java.lang.String param, long value)
public void setLong(int index, java.lang.Number value)
public void setLong(java.lang.String param, java.lang.Number value)
public void setByte(int index, byte value)
public void setByte(java.lang.String param, byte value)
public void setByte(int index, java.lang.Number value)
public void setByte(java.lang.String param, java.lang.Number value)
public void setBytes(int index, byte[] value)
public void setBytes(java.lang.String param, byte[] value)
public void setDouble(int index, double value)
public void setDouble(java.lang.String param, double value)
public void setDouble(int index, java.lang.Number value)
public void setDouble(java.lang.String param, java.lang.Number value)
public void setFloat(int index, float value)
public void setFloat(java.lang.String param, float value)
public void setFloat(int index, java.lang.Number value)
public void setFloat(java.lang.String param, java.lang.Number value)
public void setShort(int index, short value)
public void setShort(java.lang.String param, short value)
public void setShort(int index, java.lang.Number value)
public void setShort(java.lang.String param, java.lang.Number value)
public void setString(int index, java.lang.String value)
public void setString(java.lang.String param, java.lang.String value)
public void setDate(int index, java.sql.Date value)
public void setDate(java.lang.String param, java.sql.Date value)
public void setTime(int index, java.sql.Time value)
public void setTime(java.lang.String param, java.sql.Time value)
public void setTimestamp(int index, java.sql.Timestamp value)
public void setTimestamp(java.lang.String param, java.sql.Timestamp value)
public void setBigDecimal(int index, java.math.BigDecimal value)
public void setBigDecimal(java.lang.String param, java.math.BigDecimal value)
public void setBigInteger(int index, java.math.BigInteger value)
public void setBigInteger(java.lang.String param, java.math.BigInteger value)
public void setURL(int index, java.net.URL value)
public void setURL(java.lang.String param, java.net.URL value)
public void setBlob(int index, java.sql.Blob value)
public void setBlob(java.lang.String param, java.sql.Blob value)
public void setClob(int index, java.sql.Clob value)
public void setClob(java.lang.String param, java.sql.Clob value)
public void setArray(int index, java.sql.Array value)
public void setArray(java.lang.String param, java.sql.Array value)
public void setRef(int index, java.sql.Ref value)
public void setRef(java.lang.String param, java.sql.Ref value)
public void setBean(java.lang.String beanName, java.lang.Object bean)
public void setBean(java.lang.String beanName, java.util.Map parameters)
public void setObject(int index, java.lang.Object value)
public void setObject(java.lang.String param, java.lang.Object value)
public void setParameters(java.util.Map<java.lang.String,?> parameters)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |