JDBC-соединение Postgres в Справке Eclipse - PullRequest
10 голосов
/ 14 октября 2008

Я пытаюсь получить соединение postgres jdbc, работающее в eclipse. Было бы неплохо использовать Data Source Explorer, но сейчас я просто пытаюсь получить базовое соединение. На данный момент я загрузил JDBC-коннектор postgres. Затем я попробовал две разные вещи. Во-первых, Настройки-> Управление данными, я попытался добавить соединитель postgres. Во-вторых, я добавил jar в свой проект и попытался загрузить драйвер с помощью Class.forName ("org.postgresql.Driver"); но ни один не работал. У кого-нибудь есть идеи?

Спасибо, Charlie

Ответы [ 5 ]

20 голосов
/ 18 октября 2008

Вот как я установил соединение: (Я не знаю, является ли это «лучшей практикой», но это работает.)

Импорт драйвера:

  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
2 голосов
/ 23 сентября 2010

У меня тоже была эта проблема, и ответ Vjeux помог мне указать верное направление.

У меня есть локальная копия Tomcat6, которая была установлена ​​и управляется Eclipse. Он был установлен в '$ HOME / bin / tomcat6'. Чтобы заставить работать драйвер JDBC PostgreSQL, я просто скопировал свой файл postgresql.jar в каталог $ HOME / bin / tomcat6 / lib.

Кроме того, если вы не знаете, где взять драйвер, попробуйте это. Я использую Ubuntu, поэтому я запустил «sudo apt-get install libpg-java», который установил драйвер в «/usr/share/java/postgresql.jar», и я просто скопировал его оттуда.

1 голос
/ 15 декабря 2009

У меня была такая же проблема при использовании GWT.

Я исправил это, скопировав файл jar в папку "lib": (Project \ war \ WEB-INF \ lib). Когда вы добавляете jar в Build Path, он, по-видимому, выполняет статическую ссылку, однако мы хотим, чтобы lib во время выполнения!

Надеюсь, это решит вашу проблему.

0 голосов
/ 23 февраля 2013

вы можете написать этот код в файле 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"/>
0 голосов
/ 17 октября 2008

Вот один из способов подключения PostgreSQL к вашему приложению:

  1. Получить экземпляр org.postgresql.ds.PGSimpleDataSource
  2. Установите его значениями, соответствующими вашей базе данных (см. Методы ниже)
  3. Продолжайте использовать DataSource так же, как и любой другой, я бы предположил, что на данный момент вас заинтересует метод DataSource.getConnection().

Фирменными способами настройки этого конкретного источника данных являются setServerName(), setDatabaseName(), setUser() и setPassword().

Я бы не советовал делать это ни для чего, кроме тестирования, и, возможно, ваша проблема заключается в том, как вы пытаетесь получить экземпляр объекта, используя Class.forName() Существует почти дюжина различных способов получить экземпляр для объекта с тонкими различиями я предлагаю поискать в Google, поскольку этот вопрос многие люди уже писали по всему Интернету.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...