org.apache.tools.ant.taskdefs
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 ingore) {}
}
if (conn != null) {
try {conn.close();}catch (SQLException ingore) {}
}
}
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
}
Since: Ant 1.5
Method Summary | |
---|---|
Path | createClasspath()
Add a path to the classpath for loading the driver. |
Path | getClasspath()
Gets the classpath. |
protected Connection | getConnection()
Creates a new Connection as using the driver, url, userid and password
specified.
|
protected AntClassLoader | getLoader() |
protected static Hashtable | getLoaderMap() |
String | getPassword()
Gets the password. |
String | getRdbms()
Gets the rdbms. |
String | getUrl()
Gets the url. |
String | getUserId()
Gets the userId. |
String | getVersion()
Gets the version. |
boolean | isAutocommit()
Gets the autocommit. |
void | isCaching(boolean value) |
protected boolean | isValidRdbms(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(String driver)
Class name of the JDBC driver; required. |
void | setPassword(String password)
Sets the password; required. |
void | setRdbms(String rdbms)
Execute task only if the lower case product name
of the DB matches this |
void | setUrl(String url)
Sets the database connection URL; required. |
void | setUserid(String userId)
Set the user name for the connection; required. |
void | setVersion(String version)
Sets the version string, execute task only if
rdbms version match; optional. |
Returns: Returns a Path
Returns: Connection the newly created connection.
Throws: BuildException if the UserId/Password/Url is not set or there is no suitable driver or the driver fails to load.
Returns: Returns a String
Returns: Returns a String
Returns: Returns a String
Returns: Returns a String
Returns: Returns a String
Returns: Returns a boolean
Parameters: autocommit The autocommit to set
Parameters: enable
Parameters: classpath The classpath to set
Parameters: driver The driver to set
Parameters: password The password to set
Parameters: rdbms The rdbms to set
Parameters: url The url to set
Parameters: userId The userId to set
Parameters: version The version to set