另一個使用JDBC連接資料庫的範例,先準備 連結 postgresql 需要的 jar檔(postgresql-8.4-701.jdbc4.jar)
F_ConnToPostgresql.java
package fsql3;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
public class F_ConnToPostgresql {
//顯示資料庫中所有資料表與細節
public static String COMM_SHOW_ALLTABLES = "select * from information_schema.tables" +
" where table_schema not in ('information_schema','pg_catalog')";
//顯示所有資料庫
public static String COMM_SHOW_ALLDATABASE = "select * from pg_database";
//顯示所有資料庫的size(pg_database_size()需PostgreSQL 8.1以上才有支援 )
public static String COMM_SHOW_DB_SIZE = "SELECT pg_database.datname," +
" pg_size_pretty(pg_database_size(pg_database.datname)) AS size" +
" FROM pg_database;";
Connection conn;
String driver = "org.postgresql.Driver";
String url;
String ipNum;
String portNum;
String dbName;
String userName;
String passWord;
/**
*
* @param ipnum
* @param portnum
* @param dbname
* @param username
* @param password
*/
public F_ConnToPostgresql(String ipnum,String portnum,
String dbname,String username,String password){
ipNum = ipnum;
portNum = portnum;
dbName = dbname;
userName = username;
passWord = password;
try {
Class.forName(driver);
// jdbc:postgresql://主機名稱:連接埠/資料庫名稱?參數1=值1&參數2=值2
// String url = "jdbc:postgresql://localhost:5432/test1225";
url = "jdbc:postgresql://" + ipNum + ":" + portNum + "/"
+ dbName;
try {
if (userName == null && passWord == null) {
conn = DriverManager.getConnection(url);
} else {
// url , 使用者"postgres" , 密碼"baoruh3472000"
conn = DriverManager.getConnection(url, userName, passWord);
}
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public Connection getConn(){
return conn;
}
}
只要建立 F_ConnToPostgresql 物件,在建構子中傳入帳號和密碼(不需要就傳 null),就能建立和資料庫連線
使用範例參考 http://zghjava.blogspot.tw/2013/02/jdbc.html