gpt4 book ai didi

java - 为什么 BoneCP 在实例化后导致 Derby ShutdownException?

转载 作者:太空宇宙 更新时间:2023-11-04 07:34:32 25 4
gpt4 key购买 nike

基本上我是这样的:

CONNECTION_POOL = new BoneCP(config);

然后紧接着:

CONNECTION_POOL.getConnection().createStatement("SELECT * FROM myTable");

有时(并非总是)会抛出org.apache.derby.iapi.error.ShutdownException。我怀疑 BoneCP 及其实例化存在某种竞争条件或线程问题,但我在任何地方都找不到任何东西。我确实看到了一些关于延迟实例化的内容,但将其设置为 true 或 false 没有什么区别。

任何帮助将不胜感激。

最佳答案

使用调用 getConnection 并将 shutdown 属性设置为 true 来关闭嵌入式 Derby 数据库。这将关闭数据库并抛出 ShutdownException。没有什么问题,但是根据 jdbc getConnection 只允许返回有效连接或抛出异常。并且由于无法与已关闭的数据库建立有效连接,因此必须抛出异常。所以这里的问题实际上是您使用的框架是否应该捕获此异常,或者您是否应该处理它。

关于java - 为什么 BoneCP 在实例化后导致 Derby ShutdownException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17141344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com