public abstract class JDBCTask extends Task
The following example class prints the contents of the first column of each row in TableName.
package examples;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.taskdefs.JDBCTask;
public class SQLExampleTask extends JDBCTask {
    private String tableName;
    public void execute() throws BuildException {
        Connection conn = getConnection();
        Statement stmt=null;
        try {
            if (tableName == null) {
                throw new BuildException("TableName must be specified",location);
            }
            String sql = "SELECT * FROM "+tableName;
            stmt= conn.createStatement();
            ResultSet rs = stmt.executeQuery(sql);
            while (rs.next()) {
                log(rs.getObject(1).toString());
            }
        } catch (SQLException e) {
        } finally {
            if (stmt != null) {
                try {stmt.close();}catch (SQLException ignore) {}
            }
            if (conn != null) {
                try {conn.close();}catch (SQLException ignore) {}
            }
        }
    }
    public void setTableName(String tableName) {
        this.tableName = tableName;
    }
}
description, location, project| Constructor and Description | 
|---|
| JDBCTask() | 
| Modifier and Type | Method and Description | 
|---|---|
| void | addConnectionProperty(Property var)Additional properties to put into the JDBC connection string. | 
| Path | createClasspath()Add a path to the classpath for loading the driver. | 
| Path | getClasspath()Gets the classpath. | 
| protected java.sql.Connection | getConnection()Creates a new Connection as using the driver, url, userid and password
 specified. | 
| protected AntClassLoader | getLoader()Get the classloader used to create a driver. | 
| protected static java.util.Hashtable<java.lang.String,AntClassLoader> | getLoaderMap()Get the cache of loaders and drivers. | 
| java.lang.String | getPassword()Gets the password. | 
| java.lang.String | getRdbms()Gets the rdbms. | 
| java.lang.String | getUrl()Gets the url. | 
| java.lang.String | getUserId()Gets the userId. | 
| java.lang.String | getVersion()Gets the version. | 
| boolean | isAutocommit()Gets the autocommit. | 
| void | isCaching(boolean value)Set the caching attribute. | 
| protected boolean | isValidRdbms(java.sql.Connection conn)Verify we are connected to the correct RDBMS | 
| void | setAutocommit(boolean autocommit)Auto commit flag for database connection;
 optional, default false. | 
| void | setCaching(boolean enable)Caching loaders / driver. | 
| void | setClasspath(Path classpath)Sets the classpath for loading the driver. | 
| void | setClasspathRef(Reference r)Set the classpath for loading the driver
 using the classpath reference. | 
| void | setDriver(java.lang.String driver)Class name of the JDBC driver; required. | 
| void | setFailOnConnectionError(boolean b)whether the task should cause the build to fail if it cannot
 connect to the database. | 
| void | setPassword(java.lang.String password)Sets the password; required. | 
| void | setRdbms(java.lang.String rdbms)Execute task only if the lower case product name
 of the DB matches this | 
| void | setUrl(java.lang.String url)Sets the database connection URL; required. | 
| void | setUserid(java.lang.String userId)Set the user name for the connection; required. | 
| void | setVersion(java.lang.String version)Sets the version string, execute task only if
 rdbms version match; optional. | 
bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeclone, getDescription, getLocation, getProject, setDescription, setLocation, setProjectpublic void setClasspath(Path classpath)
classpath - The classpath to setpublic void setCaching(boolean enable)
enable - a boolean valuepublic Path createClasspath()
public void setClasspathRef(Reference r)
r - a reference to a classpathpublic void setDriver(java.lang.String driver)
driver - The driver to setpublic void setUrl(java.lang.String url)
url - The url to setpublic void setPassword(java.lang.String password)
password - The password to setpublic void setAutocommit(boolean autocommit)
autocommit - The autocommit to setpublic void setRdbms(java.lang.String rdbms)
rdbms - The rdbms to setpublic void setVersion(java.lang.String version)
version - The version to setpublic void setFailOnConnectionError(boolean b)
b - booleanprotected boolean isValidRdbms(java.sql.Connection conn)
conn - the jdbc connectionprotected static java.util.Hashtable<java.lang.String,AntClassLoader> getLoaderMap()
protected AntClassLoader getLoader()
public void addConnectionProperty(Property var)
var - Propertyprotected java.sql.Connection getConnection()
                                     throws BuildException
BuildException - if the UserId/Password/Url is not set or there
 is no suitable driver or the driver fails to load.public void isCaching(boolean value)
value - a boolean valuepublic Path getClasspath()
public boolean isAutocommit()
public java.lang.String getUrl()
public java.lang.String getUserId()
public void setUserid(java.lang.String userId)
userId - The userId to setpublic java.lang.String getPassword()
public java.lang.String getRdbms()
public java.lang.String getVersion()