2012-01-16 2 views
1

Я использую дерби для базы данных. и моя нормальная операция вставки/обновления работает нормально. Но несколько раз, когда я вставляю запрос, я получаю сообщение об ошибке «Нет текущего подключения».Derby: Нет текущего подключения?

Я искал об этом, но не нашел подходящего решения.

Кто-нибудь знает, почему произошло это исключение?

Благодаря

Тедж

+0

закрываете вы подключения правильно, как только вы сделали с ними? –

+0

«Нет текущего подключения» - это ошибка, которую вы получаете? или любой другой формулировки? –

+0

Я верю, что это будет "No Current Connection" –

ответ

0

его возникает, когда вы пытаетесь выполнить операции на закрытом объекте подключения. Таким образом, вы должны проверить, если соединение закрываются, если так ..то подключиться снова: -

public Connection getConnection() throws SQLException { 
    if(connection==null || connection.isClosed()) { 
     connect(); 
    } 
    return connection; 
} 

private void connect() throws SQLException { 
    try { 
     connection = DriverManager.getConnection(DBURL); 
     logger.info("database connection established"); 
    } catch (SQLException e) { 
     logger.error(e.getMessage()); 
     throw e; 
    } 
}