net.sf.jasperreports.engine.query
Class JRJdbcQueryExecuter

java.lang.Object
  extended by net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
      extended by net.sf.jasperreports.engine.query.JRJdbcQueryExecuter
All Implemented Interfaces:
JRQueryExecuter

public class JRJdbcQueryExecuter
extends JRAbstractQueryExecuter

JDBC query executer for SQL queries.

This query executer implementation offers built-in support for SQL queries.

Version:
$Id: JRJdbcQueryExecuter.java 3034 2009-08-27 11:58:04Z teodord $
Author:
Teodor Danciu (teodord@users.sourceforge.net)

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
JRAbstractQueryExecuter.QueryParameter
 
Field Summary
protected static java.lang.String CLAUSE_ID_IN
           
protected static java.lang.String CLAUSE_ID_NOTIN
           
protected static java.lang.String CLOSE_CURSORS_AT_COMMIT
           
protected static java.lang.String CONCUR_READ_ONLY
           
protected static java.lang.String CONCUR_UPDATABLE
           
protected static java.lang.String HOLD_CURSORS_OVER_COMMIT
           
protected static java.lang.String TYPE_FORWARD_ONLY
           
protected static java.lang.String TYPE_SCROLL_INSENSITIVE
           
protected static java.lang.String TYPE_SCROLL_SENSITIVE
           
 
Fields inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
CLAUSE_POSITION_ID, clauseFunctions, dataset
 
Constructor Summary
JRJdbcQueryExecuter(JRDataset dataset, java.util.Map parameters)
           
 
Method Summary
 boolean cancelQuery()
          Cancels the query if it's currently running.
 void close()
          Closes resources kept open during the data source iteration.
 JRDataSource createDatasource()
          Executes the query and creates a JRDataSource out of the result.
protected  void createStatement()
           
protected static int getConcurrency(java.lang.String concurrency)
           
protected static int getHoldability(java.lang.String holdability, java.sql.Connection connection)
           
protected  java.lang.String getParameterReplacement(java.lang.String parameterName)
          Returns the replacement text for a query paramter.
protected static int getResultSetType(java.lang.String type)
           
protected  void registerFunctions()
          Registers built-in clause functions.
protected  void setStatementMultiParameter(int parameterIndex, java.lang.String parameterName, int valueIndex, java.lang.Object value)
           
protected  int setStatementMultiParameters(int parameterIndex, java.lang.String parameterName)
           
protected  void setStatementParameter(int parameterIndex, java.lang.Class parameterType, java.lang.Object parameterValue)
           
protected  void setStatementParameter(int parameterIndex, java.lang.String parameterName)
           
 
Methods inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
addQueryMultiParameters, addQueryParameter, appendClauseChunk, appendParameterChunk, appendParameterClauseChunk, appendQueryChunk, appendTextChunk, applyClause, checkParameter, getCollectedParameterNames, getCollectedParameters, getParameter, getParameterValue, getParameterValue, getQueryString, getValueParameter, getValueParameter, parseQuery, registerClauseFunction, resolveFunction, unregisterClauseFunction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLAUSE_ID_IN

protected static final java.lang.String CLAUSE_ID_IN
See Also:
Constant Field Values

CLAUSE_ID_NOTIN

protected static final java.lang.String CLAUSE_ID_NOTIN
See Also:
Constant Field Values

TYPE_FORWARD_ONLY

protected static final java.lang.String TYPE_FORWARD_ONLY
See Also:
Constant Field Values

TYPE_SCROLL_INSENSITIVE

protected static final java.lang.String TYPE_SCROLL_INSENSITIVE
See Also:
Constant Field Values

TYPE_SCROLL_SENSITIVE

protected static final java.lang.String TYPE_SCROLL_SENSITIVE
See Also:
Constant Field Values

CONCUR_READ_ONLY

protected static final java.lang.String CONCUR_READ_ONLY
See Also:
Constant Field Values

CONCUR_UPDATABLE

protected static final java.lang.String CONCUR_UPDATABLE
See Also:
Constant Field Values

HOLD_CURSORS_OVER_COMMIT

protected static final java.lang.String HOLD_CURSORS_OVER_COMMIT
See Also:
Constant Field Values

CLOSE_CURSORS_AT_COMMIT

protected static final java.lang.String CLOSE_CURSORS_AT_COMMIT
See Also:
Constant Field Values
Constructor Detail

JRJdbcQueryExecuter

public JRJdbcQueryExecuter(JRDataset dataset,
                           java.util.Map parameters)
Method Detail

registerFunctions

protected void registerFunctions()
Registers built-in clause functions.

See Also:
registerFunctions(), JRAbstractQueryExecuter.appendClauseChunk(StringBuffer, String[])

getParameterReplacement

protected java.lang.String getParameterReplacement(java.lang.String parameterName)
Description copied from class: JRAbstractQueryExecuter
Returns the replacement text for a query paramter.

Specified by:
getParameterReplacement in class JRAbstractQueryExecuter
Parameters:
parameterName - the paramter name
Returns:
the replacement text
See Also:
JRQueryChunk.TYPE_PARAMETER

createDatasource

public JRDataSource createDatasource()
                              throws JRException
Description copied from interface: JRQueryExecuter
Executes the query and creates a JRDataSource out of the result.

Returns:
a JRDataSource wrapping the query execution result.
Throws:
JRException

createStatement

protected void createStatement()
                        throws JRException
Throws:
JRException

setStatementParameter

protected void setStatementParameter(int parameterIndex,
                                     java.lang.String parameterName)
                              throws java.sql.SQLException
Throws:
java.sql.SQLException

setStatementMultiParameters

protected int setStatementMultiParameters(int parameterIndex,
                                          java.lang.String parameterName)
                                   throws java.sql.SQLException
Throws:
java.sql.SQLException

setStatementMultiParameter

protected void setStatementMultiParameter(int parameterIndex,
                                          java.lang.String parameterName,
                                          int valueIndex,
                                          java.lang.Object value)
                                   throws java.sql.SQLException
Throws:
java.sql.SQLException

setStatementParameter

protected void setStatementParameter(int parameterIndex,
                                     java.lang.Class parameterType,
                                     java.lang.Object parameterValue)
                              throws java.sql.SQLException
Throws:
java.sql.SQLException

close

public void close()
Description copied from interface: JRQueryExecuter
Closes resources kept open during the data source iteration.

This method is called after the report is filled or the dataset is iterated. If a resource is not needed after the data source has been created, it should be released at the end of createDatasource.


cancelQuery

public boolean cancelQuery()
                    throws JRException
Description copied from interface: JRQueryExecuter
Cancels the query if it's currently running.

This method will be called from a different thread if the client decides to cancel the filling process.

Returns:
true if and only if the query was running and it has been canceled
Throws:
JRException

getResultSetType

protected static int getResultSetType(java.lang.String type)

getConcurrency

protected static int getConcurrency(java.lang.String concurrency)

getHoldability

protected static int getHoldability(java.lang.String holdability,
                                    java.sql.Connection connection)
                             throws java.sql.SQLException
Throws:
java.sql.SQLException


© 2001-2009 Jaspersoft Corporation www.jaspersoft.com