Java 對資料庫表名的解析

來源:互聯網
上載者:User
package cn.edu.nwsuaf.cie.aisa.wsc.operation;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.DatabaseMetaData;

public class DataBaseTableNameRead {
ConnectionSource dbConnectionSourceImpl = null;

public ResultSet getDataBaseTableNameRead() {
dbConnectionSourceImpl = new DBConnectionSourceImpl();
Connection connection = dbConnectionSourceImpl.getConnection();
ResultSet resultSet = null;
try {
DatabaseMetaData meta = (DatabaseMetaData) connection.getMetaData();
resultSet = meta.getTables(null, null, null,
new String[] { "TABLE" });
while (resultSet.next()) {
System.out.println("表名:" + resultSet.getString(3));
System.out.println("表所屬使用者名稱:" + resultSet.getString(2));
System.out.println("名:" + resultSet.getString(1));
System.out.println("------------------------------");
}
connection.close();
} catch (Exception e) {
try {
connection.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// TODO Auto-generated catch block
e.printStackTrace();
}
return resultSet;
}
}

package cn.edu.nwsuaf.cie.aisa.wsc.operation;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import cn.edu.nwsuaf.cie.aisa.wsc.informationpushmain.InformationPush;

/**
* @author ���ܣ� ���ڣ�2013-7-14 �޸ļ�¼��
*/
public class DBConnectionSourceImpl implements ConnectionSource {
Proopertiess properties  =InformationPush.PROPERTIES;
@Override
public Connection getConnection(){
// TODO Auto-generated method stub
Connection connection = null;
if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("mysql")) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USENAME = InformationPush.PROPERTIES.getDataSource().getUser();
String PASSWORD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
System.out.println(URL);
connection = (Connection) DriverManager.getConnection(URL,
USENAME, PASSWORD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println(e.getMessage());
e.printStackTrace();
}

} else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("sqlserver")) {

try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {

connection = DriverManager.getConnection(URL, USER, PWD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("oracle")) {

try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {

connection = DriverManager.getConnection(URL, USER, PWD);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("access")) {

try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
connection = DriverManager.getConnection(URL, USER, PWD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
return connection;
}
}

package cn.edu.nwsuaf.cie.aisa.wsc.operation;

import java.sql.Connection;

/**
* @author
* ���ڣ�2013-7-14
*/
public interface ConnectionSource {

public Connection getConnection();

}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.