2012-06-12 4 views
0

С Derby вы определенно предполагают, чтобы позвонить:Как правильно завершать работу Встроенная база данных Derby с BoneCP пула соединений

DriverManager.getConnection("jdbc:derby:myDatabase;shutdown=true"); 

Когда вы хотите выключить базу данных. Однако с BoneCP вы делаете:

BoneCPConfig config = new BoneCPConfig(); 
config.setJdbcUrl("jdbc:derby:myDatabase"); 
config.setXXX(...); 
... 
BoneCP connectionPool = new BoneCP(config); 

// shutdown connection pool 
connectionPool.shutdown(); 

Однако с derby you need to call the shutdown command otherwise you can get some errors

Таким образом, вопрос, как я называю эту строку подключения отключения в рамках BoneCP?

+0

вы не можете просто вызвать 'DriverManager.getConnection ("JDBC: котелок: MyDatabase; выключение = истина");?' 'После connectionPool.shutdown()' – oers

+0

Нет, делать, что приводит к java.sql.SQLNonTransientConnectionException –

+0

В соответствии с вопросом компоновщика и документами следует ожидать исключения – oers

ответ

0

In another related newer question, следующая причина имеет ту же причину: «Если вы не используете v0.8.1-beta2 или выше, установите для параметра« disableConnectionTracking »значение true в вашей конфигурации».

Другими словами, вам нужно как URL-соединение Дерби, а также надлежащего конфигурации для BoneCP, по крайней мере, на данный момент ...

Пожалуйста, обратите внимание, что you should expect an exception when SUCCESSFULLY shutting down derby: «Успешное завершение работы всегда приводит к SQLException, чтобы указать что Дерби закрыл и что другого исключения нет ».

 Смежные вопросы

  • Нет связанных вопросов^_^