ayaniimi213
7/11/2013 - 10:50 PM

JDBCSample.java

import java.net.*;
import java.sql.*;

// javac JDBCSample.java
// java -classpath "/usr/local/jakarta-tomcat-4.0.4/lib/postgresql.jar" JDBCSample
// java -classpath "/usr/local/jakarta-tomcat-4.0.4/lib/mm.mysql-2.0.14" JDBCSample
 
/**
 *
 * JDBCSample.java
 * <p>
 * JDBCを使ってデータベースにアクセスする
 * </p>
 * @author Ayahiko Niimi &lt;niimi@fun.ac.jp&gt;
 * $Id: JDBCSample.java,v 1.1 2007/12/26 09:51:56 niimi Exp $
 */
class JDBCSample {
    // 接続するデータベースのサーバ名
    static String server   = "localhost"; // Server Name
    // ★ 接続するデータベースの指定(PostgreSQLならAdministrator,MySQLならtest)
    // static String db       = "Administrator";  // DB Name
    // static String db       = "test";  // DB Name
    static String db       = "auction";  // DB Name
    // ★ 接続するデータベースのデータベース管理者のユーザ名
    // static String user     = "Administrator";  // User
    static String user     = "pgsql";  // User
    // 接続するデータベースのデータベース管理者のデータベース上でのパスワード
    static String passwd   = "hoge";  // Password
    // ★ 接続するJDBCの指定(どれか1つを残してコメントにする)
    // static String url = "jdbc:db2:" + db;
    static String url = "jdbc:postgresql:" + db;
    // static String url      = "jdbc:mysql://" + server + "/" + db; // MySQL
    static {
        try {
            // ★ DriverManagerにドライバを登録する(どれか1つを残してコメントにする)
            // Class.forName("COM.ibm.db2.jdbc.app.DB2Driver"); // IBM DB2
            Class.forName("org.postgresql.Driver"); // PostgreSQL
            // Class.forName("org.gjt.mm.mysql.Driver"); // MySQL
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     *
     */
    public static void main(String args[]) {
        try {
            // デフォルトのユーザ名とパスワードで接続する
            // Connection con = DriverManager.getConnection(url);
            // ユーザ名とパスワードを指定して接続する
            Connection con = DriverManager.getConnection(url, user, passwd);

            Statement stmt = con.createStatement();

            // SQL質問
            String SQLquery = "SELECT * FROM users";

            // 質問を発行し、結果を得る
            ResultSet rs = stmt.executeQuery(SQLquery);

            // 結果を表示する
            while (rs.next()) {
                String firstColumn = rs.getString(1);
                String secondColumn = rs.getString(2);
                String thirdColumn = rs.getString(3);

                System.out.print(firstColumn);
                System.out.print(" " + secondColumn);
                System.out.print(" " + thirdColumn);
                System.out.print("\n");
            }
            rs.close();
            stmt.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}