Как определить, действительно ли java.sql.Connection с PostgreSQL JDBC4 - PullRequest
2 голосов
/ 11 марта 2011

Я пытаюсь написать тест для метода, который возвращает java.sql.Connection для подключения к PostgreSQL.

Мой тест очень прост:

@Test
public void connectionFactoryShouldReturnOpenConnection() throws Exception {
    Connection conn = ConnectionFactory.getConnection();

    assertTrue(conn.isValid(2));
}

The isValid вызов не удался, хотя:

org.postgresql.util.PSQLException: Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented.
at org.postgresql.Driver.notImplemented(Driver.java:753)
at org.postgresql.jdbc4.AbstractJdbc4Connection.isValid(AbstractJdbc4Connection.java:109)
at org.postgresql.jdbc4.Jdbc4Connection.isValid(Jdbc4Connection.java:21)

Что происходит?Конечно, есть драйвер PostgreSQL JDBC, который реализует методы Java 1.6, такие как isValid()?

Вот подробности о драйвере, который я использую:

<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.0-801.jdbc4</version>

Ответы [ 2 ]

4 голосов
/ 11 марта 2011

Выполните простой запрос, если он работает, он действителен.Если нет, то это не так.

И под простым запросом я имею в виду что-то вроде:

SELECT 1;

Действительно просто.

2 голосов
/ 11 марта 2011

Из драйвера postresql исходный код AbstractJdbc4Connection.isValid() выдает это исключение при вызове:

public boolean isValid(int timeout) throws SQLException
{
    checkClosed();
    throw org.postgresql.Driver.notImplemented(this.getClass(), "isValid(int)");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...