|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.framework.jdto.jdbc.wrapper.JDBCTemplate com.framework.jdto.jdbc.wrapper.PreparedStatementWrapper
This class is a Wrapper Class for java.sql.PreparedStatement. This class has the ability to take care of the transactions. if you want the current PrepareStatementWrapper Object to participate in a Transaction you must call the setSql() method with a boolean parameter as true on the current PrepareStatementWrapper Object. This Class takes care of getting and releasing the connection based on the current Objects transaction status.
This class also has the capability to Log the PreparedStatement SQL Query.
The Developer is not required to take care of closing the connection. This classes closes the connection after the execution of the query if the current PrepareStatementWrapper Object is not participating in any transaction. if the current PrepareStatementWrapper Object Participates in a Transaction then the TransactionContextManager will take care of closing the connection once the transaction is either committed or rolledback.
Constructor Summary | |
PreparedStatementWrapper()
Default Constructor |
|
PreparedStatementWrapper(javax.sql.DataSource ds)
Constructor that sets the DataSource Object to the current PreparedStatementWrapper Object. |
Method Summary | |
boolean |
execute()
Calls the execute() method of java.sql.PreparedStatement and closes the PreparedStatement and connection before returning the boolean value. |
java.lang.Object |
executeQuery(RowMapper row)
Executes the SQL query in this PreparedStatementWrapper object and returns an Object type of object generated by the query. it takes a RowMapper Object as parameter.This method closes the ResultSet, PreparedStatement and Connection before returning the Object value. |
int |
executeUpdate()
Executes the SQL statement in this PreparedStatementWrapper object, which must be an SQL INSERT, UPDATE or DELETE statement or an SQL statement that returns nothing, such as a DDL statement. |
java.lang.String |
getSql()
Returns the sql query that is associated with the current PreparedStatementWrapper object |
void |
setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
Sets the designated parameter to BigDecimal value. |
void |
setBoolean(int parameterIndex,
boolean x)
Sets the designated parameter to boolean value. |
void |
setByte(int parameterIndex,
byte x)
Sets the designated parameter to byte value. |
void |
setBytes(int parameterIndex,
byte[] x)
Sets the designated parameter to array of bytes. |
void |
setDate(int parameterIndex,
java.sql.Date x)
Sets the designated parameter to Date value. |
void |
setDouble(int parameterIndex,
double x)
Sets the designated parameter to double value. |
void |
setFloat(int parameterIndex,
float x)
Sets the designated parameter to float value. |
void |
setInt(int parameterIndex,
int x)
Sets the designated parameter to int value. |
void |
setLong(int parameterIndex,
long x)
Sets the designated parameter to long value. |
void |
setNull(int parameterIndex,
int sqlType)
Sets the designated parameter to SQL NULL. |
void |
setShort(int parameterIndex,
short x)
Sets the designated parameter to short value. |
void |
setSql(java.lang.String sql)
Sets the sql string to the current PreparedStatementWrapper Object and associates it with the java.sql.PreparedStatement. |
void |
setSql(java.lang.String sql,
boolean addToTransaction)
Sets the sql string to the current PreparedStatementWrapper Object and associates it with the java.sql.PreparedStatement. |
void |
setString(int parameterIndex,
java.lang.String x)
Sets the designated parameter to String value. |
void |
setTime(int parameterIndex,
java.sql.Time x)
Sets the designated parameter to SQL Time value. |
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x)
Sets the designated parameter to SQL TimeStamp value. |
Methods inherited from class com.framework.jdto.jdbc.wrapper.JDBCTemplate |
finishTransaction, setDatasource |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public PreparedStatementWrapper()
public PreparedStatementWrapper(javax.sql.DataSource ds)
ds
- javax.sql.DataSourceMethod Detail |
public java.lang.String getSql()
public void setSql(java.lang.String sql) throws DAOException
sql
- an SQL Query as java.lang.String
DAOException
- if any database error occurspublic void setSql(java.lang.String sql, boolean addToTransaction) throws DAOException
If there is an existing transaction then this method associates the current Object to the currently running Transaction. Otherwise this method creates a new Transaction.
If a new Transaction is started from this method (That is, TransactionContextManager's beginTransaction() is not called before), user needs to call this method on each PreparedStatementWrapper object, which needs to run in a transaction.
But if a new Transaction is created by calling the TransactionContextManager's beginTransaction() method then, it is not required to call this method explicitly, instead setSql(String sql) method can be called. The TransactionContextManager will take care of running all the PreparedStatementWrapper Objects in the current Transaction, which are executed after beginTransaction() and before endTransaction() method.
sql
- an SQL Query as java.lang.StringaddToTransaction
- adds the current PreparedStatementWrapper Object to the current Transaction if true.
DAOException
- if any database error occurspublic java.lang.Object executeQuery(RowMapper row) throws DAOException
If the current object is running in a transaction, on successful execution this sets the Current Transaction Status as STATUS_MARKED_COMMIT, otherwise it sets as STATUS_MARKED_ROLLBACK.
row
- any class that implements RowMapper Interface.
DAOException
- if any database error occurspublic int executeUpdate() throws DAOException
If the current object is running in a transaction, on successful execution this sets the Current Transaction Status as STATUS_MARKED_COMMIT, otherwise it sets as STATUS_MARKED_ROLLBACK.
DAOException
- if any database error occurspublic boolean execute() throws DAOException
If the current object is running in a transaction, on successful execution this sets the Current Transaction Status as STATUS_MARKED_COMMIT, otherwise it sets as STATUS_MARKED_ROLLBACK.
DAOException
- if any database error occurspublic void setNull(int parameterIndex, int sqlType) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...sqlType
- the SQL type code defined in java.sql.Types
DAOException
- if a database access error occurspublic void setBoolean(int parameterIndex, boolean x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setByte(int parameterIndex, byte x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setShort(int parameterIndex, short x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setInt(int parameterIndex, int x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setLong(int parameterIndex, long x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setFloat(int parameterIndex, float x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setDouble(int parameterIndex, double x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setBigDecimal(int parameterIndex, java.math.BigDecimal x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setString(int parameterIndex, java.lang.String x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setBytes(int parameterIndex, byte[] x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setDate(int parameterIndex, java.sql.Date x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setTime(int parameterIndex, java.sql.Time x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurspublic void setTimestamp(int parameterIndex, java.sql.Timestamp x) throws DAOException
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
DAOException
- if a database access error occurs
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |