package spider.tools; 
import java.sql.*; 
public class DBTools { 
  public static final int ORACLE = 0;   public static final int SQLSERVER = 1; 
  private static String oracleDriver =       "oracle.jdbc.driver.OracleDriver";   private static String sqlserverDriver =       "com.microsoft.jdbc.sqlserver.SQLServerDriver"; 
  public Connection createConnection(String host, String dataBase, String user, String password,                   int dbKind) {     Connection result = null; 
    String dbUrl = null;     String dbDriver = null; 
    if (dbKind == ORACLE) {       dbUrl = createOracleUrl(host, dataBase);       dbDriver = oracleDriver;     }     else if (dbKind == SQLSERVER) {       dbUrl = createSqlserverUrl(host, dataBase);       dbDriver = sqlserverDriver;     }     else {       MyUtil.log(           "initial database connection failure: " + "Unsupport data base!");       return null;     } 
    try {       Class.forName(dbDriver);       result = DriverManager.getConnection(dbUrl, user, password);     }     catch (Exception e) {       MyUtil.log(           "initial database connection failure: " + e.toString());       return null;     }     return result;   } 
  public String createOracleUrl(String host, String dataBase) {     String oracleUrl = "jdbc:oracle:thin:@"         + host + ":1521:"         + dataBase;     return oracleUrl;   } 
  public String createSqlserverUrl(String host, String dataBase) {     String sqlServerUrl = "jdbc:microsoft:sqlserver://"         + host + ":1433;DatabaseName="         + dataBase;     return sqlServerUrl;   }   public boolean isTableExist(Connection cnn, String table) {     boolean result = false;     String strSQL = "select * from sysobjects where id=object_id('" + table + "')";     Statement st = null;     ResultSet rs = null;     try {       st = cnn.createStatement();       rs = st.executeQuery(strSQL);       if(rs.next())         result = true;     }     catch (SQLException ex) {       MyUtil.log("Error happen when check table existance! table name: " + table);     }     finally {       if (st != null) {         try {           st.close();         }         catch (SQLException ex1) {}       }       if (rs != null) {         try {           rs.close();         }         catch (SQLException ex1) {}       }     }     return result;   } 
  public boolean clearTable(Connection cnn, String table) {     if (!isTableExist(cnn, table))       return false;     boolean flag = true;     PreparedStatement ps = null;     try {       ps = cnn.prepareStatement("delete from " + table);       ps.executeUpdate();     }     catch (Exception e) {       flag = false;     }     finally {       if (ps != null) {         try {           ps.close();         }         catch (SQLException ex) {}       }     }     return flag;   } 
}  
 
  |