10

Eclipseでpostgres jdbc接続を機能させようとしています。Data Source Explorer を使用できればよいのですが、今のところ、基本的な接続を取得しようとしています。これまでに行ったことは、postgres JDBC コネクタをダウンロードすることです。次に、2つの異なることを試しました。まず、設定 -> データ管理、postgres コネクタを追加してみました。次に、プロジェクトに jar を追加し、Class.forName("org.postgresql.Driver"); を使用してドライバーをロードしようとしました。しかし、どちらも機能しませんでした。誰にもアイデアはありますか?

ありがとう、チャーリー

4

5 に答える 5

21

これが私が接続を確立した方法です:(これが「ベストプラクティス」であるかどうかはわかりませんが、機能します。)

ドライバーのインポート:

  1. プロジェクトを右クリック
  2. 物件を選ぶ
  3. 選ぶJava build path
  4. Add external JARS..JDBC ドライバーの場所を選択します。

これが私のコードです:

try{
    Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException cnfe){
      System.out.println("Could not find the JDBC driver!");
      System.exit(1);
    }
Connection conn = null;
try {
    conn = DriverManager.getConnection
                   (String url, String user, String password);
     } catch (SQLException sqle) {
       System.out.println("Could not connect");
       System.exit(1);
     }

URL は、次のいずれかの形式にすることができます。

jdbc:postgresql:database
jdbc:postgresql://host/database
jdbc:postgresql://host:port/database
于 2008-10-18T08:25:06.447 に答える
2

私もこの問題を抱えていて、Vjeuxの答えは私を正しい方向に向けるのに役立ちました。

Eclipseによってインストールおよび管理されているTomcat6のローカルコピーがあります。'$ HOME / bin/tomcat6'にインストールされました。PostgreSQL JDBCドライバーを機能させるには、postgresql.jarファイルを「$ HOME / bin / tomcat6/lib」ディレクトリーにコピーするだけです。

また、そもそもどこからドライバーを入手できるかわからない場合は、これを試してください。Ubuntuを実行しているので、「sudo apt-get install libpg-java」を実行して、ドライバーを「/usr/share/java/postgresql.jar」にインストールしたので、そこからコピーしました。

于 2010-09-23T00:35:31.827 に答える
1

GWTを使用しても同じ問題がありました。

「lib」フォルダー(Project\war\WEB-INF\lib)内のjarファイルをコピーして修正しました。ビルド パスに jar を追加すると、リンクが静的に行われるように見えますが、実行時に lib が必要です。

問題が解決することを願っています。

于 2009-12-15T13:40:37.530 に答える
0

このコードをpersistence.xmlに書くことができます

      <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>
        <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/yourDataBaseName"/>
        <property name="javax.persistence.jdbc.user" value="postgres"/>
        <property name="javax.persistence.jdbc.password" value="yourPassword"/>
于 2013-02-23T19:10:19.393 に答える
-1

アプリケーションへのPostgreSQL接続を取得する1つの方法は次のとおりです。

  1. のインスタンスを取得しますorg.postgresql.ds.PGSimpleDataSource
  2. データベースに一致する値でセットアップします(以下のメソッドを参照)
  3. 他の方法と同じようにデータソースの使用を続行します。この時点で、このメソッドに関心があると思いますDataSource.getConnection()

この特定のデータソースを構成するための独自の方法は、、、setServerName()およびです。setDatabaseName()setUser()setPassword()

ただし、テスト以外の目的でこれを行うことはお勧めしません。問題は、オブジェクトのインスタンスを使用して取得しようとしている方法にある可能性があります。Class.forName()微妙な違いがあるオブジェクトのインスタンスを取得するには、ほぼ12の異なる方法があります。 、インターネット全体ですでに多くの人が書いているテーマなので、グーグルをお勧めします。

于 2008-10-17T09:08:08.170 に答える