⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databaseconnection.java

📁 自动生成JAVA-Struts网站的程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.sutternow.data;import java.sql.*;import java.util.*;/** * Title:        JDBCExplorer * Description: * Company: * @author Matthew Payne * @version 2.0 */public class DatabaseConnection {    private boolean connected = false;    private Connection conn = null;    private DatabaseMetaData mtdt = null;    private static DatabaseConnection instance;    public DatabaseConnection() {        instance = this;    }    public DatabaseConnection(String url, String driver, String login, String password) throws Exception {        instance = this;        connect(url, driver, login, password);    }    public static void main(String[] args) throws Exception {        DatabaseConnection databaseConnection1 = new DatabaseConnection(args[0], args[1], args[2], args[3]);        databaseConnection1.test();    }    public void connect(String url, String driver, String login, String            password) throws Exception {        Class.forName(driver);        conn = DriverManager.getConnection(url, login, password);        if (conn != null) {            connected = true;        }    }    public Connection getLiveConnection(String url, String driver, String login, String            password) throws Exception {        Class.forName(driver);        Connection cn = DriverManager.getConnection(url, login, password);        return cn;    }    public void disconnect() {        try {            conn.close();            connected = false;            mtdt = null;            conn = null;        } catch (Exception e) {        }    }    public static String testConectionInfo(String className, String dbURL, String user, String pass) {        String response;        if (user == null || user.length() < 1) {            response = "username missing";            return response;        }        if (className == null || className.length() < 5) {            response = "className missing or invalid";            return response;        }        if (dbURL == null || dbURL.length() < 5) {            response = "URL missing or invalid";            return response;        }        try {            // Load the jdbc-odbc bridge driver            Class.forName(className);            // Enable logging            //DriverManager.setLogStream(System.err);            System.out.println("Getting Connection");            Connection conn =                    DriverManager.getConnection(dbURL, user, pass);	// user, passwd            // If a SQLWarning object is available, print its            // warning(s).  There may be multiple warnings chained.            SQLWarning warn = conn.getWarnings();            while (warn != null) {                System.out.println("SQLState: " + warn.getSQLState());                System.out.println("Message:  " + warn.getMessage());                System.out.println("Vendor:   " + warn.getErrorCode());                System.out.println("");                warn = warn.getNextWarning();            }            // Process the connection here...            conn.close();	// All done with that DB connection            response = "Connection Successfull";        } catch (ClassNotFoundException e) {            System.out.println("Can't load driver " + e);            response = "Unable to load Database Class.";        } catch (SQLException e) {            System.out.println("Database access failed " + e);            response = "Unable to connect to database server.";        }        return response;    }    public static DatabaseConnection getInstance() {        return instance;    }    public boolean isActive() {        return connected;    }    public String[][] getSession() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = new String[3][2];        s[0] = setString2("Property", "Value");        s[1] = setString2("URL in use", mtdt.getURL());        s[2] = setString2("Username", mtdt.getUserName());        mtdt = null;        return s;    }    public String[][] getEngineInfo() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = new String[5][2];        s[0] = setString2("Property", "Value");        s[1] = setString2("Database name", mtdt.getDatabaseProductName());        s[2] = setString2("Database version", mtdt.getDatabaseProductVersion());        s[3] = setString2("Driver name", mtdt.getDriverName());        s[4] = setString2("Driver version", mtdt.getDriverVersion());        mtdt = null;        return s;    }    public String[][] getEngineSpecs() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = new String[13][2];        s[0] = setString2("Property", "Value");        s[1] = setString2("Uses local files", mtdt.usesLocalFiles());        s[2] = setString2("Uses local file per table", mtdt.usesLocalFilePerTable());        s[3] = setString2("Nulls are sorted high", mtdt.nullsAreSortedHigh());        s[4] = setString2("Nulls are sorted at end", mtdt.nullsAreSortedAtEnd());        s[5] = setString2("Supports mixed case identifiers", mtdt.supportsMixedCaseIdentifiers());        s[6] = setString2("Stores mixed case identifiers", mtdt.storesMixedCaseIdentifiers());        s[7] = setString2("Identifier quote string", mtdt.getIdentifierQuoteString());        s[8] = setString2("Supported SQL keywords", mtdt.getSQLKeywords());        s[9] = setString2("Numeric functions", mtdt.getNumericFunctions());        s[10] = setString2("String functions", mtdt.getStringFunctions());        s[11] = setString2("System functions", mtdt.getSystemFunctions());        s[12] = setString2("Time and date functions", mtdt.getTimeDateFunctions());        mtdt = null;        return s;    }    public String[][] getEngineFeatures() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = new String[27][2];        s[0] = setString2("Property", "Value");        s[1] = setString2("Minimun SQL grammar", mtdt.supportsMinimumSQLGrammar());        s[2] = setString2("Core SQL grammar", mtdt.supportsCoreSQLGrammar());        s[3] = setString2("Extended SQL grammar", mtdt.supportsExtendedSQLGrammar());        s[4] = setString2("ANSI-92 Entry Level SQL", mtdt.supportsANSI92EntryLevelSQL());        s[5] = setString2("ANSI-92 Intermediate SQL", mtdt.supportsANSI92IntermediateSQL());        s[6] = setString2("ANSI-92 Full SQL grammar", mtdt.supportsANSI92FullSQL());        s[7] = setString2("Integrity enhancement facility", mtdt.supportsIntegrityEnhancementFacility());        s[8] = setString2("Outer joins", mtdt.supportsOuterJoins());        s[9] = setString2("Full outer joins", mtdt.supportsFullOuterJoins());        s[10] = setString2("Limited outer joins", mtdt.supportsLimitedOuterJoins());        s[11] = setString2("Alter table with add column", mtdt.supportsAlterTableWithAddColumn());        s[12] = setString2("Alter table with drop column", mtdt.supportsAlterTableWithDropColumn());        s[13] = setString2("Column aliasing", mtdt.supportsColumnAliasing());        s[14] = setString2("Table correlation names", mtdt.supportsTableCorrelationNames());        s[15] = setString2("Expressions in order by", mtdt.supportsExpressionsInOrderBy());        s[16] = setString2("Unrelated order by", mtdt.supportsOrderByUnrelated());        s[17] = setString2("Group by", mtdt.supportsGroupBy());        s[18] = setString2("Unrelated group by", mtdt.supportsGroupByUnrelated());        s[19] = setString2("Group by beyond select", mtdt.supportsGroupByBeyondSelect());        s[20] = setString2("Like escape clause", mtdt.supportsLikeEscapeClause());        s[21] = setString2("Multiple result sets", mtdt.supportsMultipleResultSets());        s[22] = setString2("Multiple transactions", mtdt.supportsMultipleTransactions());        s[23] = setString2("Non nullable columns", mtdt.supportsNonNullableColumns());        s[24] = setString2("Term for schemas", mtdt.getSchemaTerm());        s[25] = setString2("Term for procedures", mtdt.getProcedureTerm());        s[26] = setString2("Term for catalogs", mtdt.getCatalogTerm());        mtdt = null;        return s;    }    public String[][] getEngineLimitations() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = new String[10][2];        s[0] = setString2("Property", "Value");        s[1] = setString2("Binary literal length", mtdt.getMaxBinaryLiteralLength());        s[2] = setString2("Character literal length", mtdt.getMaxCharLiteralLength());        s[3] = setString2("Column name length", mtdt.getMaxColumnNameLength());        s[4] = setString2("Columns in group by", mtdt.getMaxColumnsInGroupBy());        s[5] = setString2("Columns in index", mtdt.getMaxColumnsInIndex());        s[6] = setString2("Columns in order by", mtdt.getMaxColumnsInOrderBy());        s[7] = setString2("Columns in select", mtdt.getMaxColumnsInSelect());        s[8] = setString2("Columns in table", mtdt.getMaxColumnsInTable());        s[9] = setString2("Number of connections", mtdt.getMaxConnections());        mtdt = null;        return s;    }    public String[] getCatalogs() throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[] s = getResultSetColumn(mtdt.getCatalogs(), 1);        if (s.length == 0) {            s = new String[1];            s[0] = ""; // anonymous catalog        }        mtdt = null;        return s;    }    public String[] getTables(String catalog, String type) throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[] types = new String[1];        types[0] = type;        String[] s = getResultSetColumn(mtdt.getTables(catalog, null, "%", types), "TABLE_NAME");        mtdt = null;        return s;    }    public String[][] getTableColumns(String catalog, String table) throws Exception {        if (mtdt == null) {            mtdt = conn.getMetaData();        }        String[][] s = getAllResultSetColumns(mtdt.getColumns(catalog, null, table, "%"));        mtdt = null;        return s;    }    public String[][] getTablePrimaryKeys(String catalog, String table) throws Exception {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -