Java 希卡里普和德比
我使用以下属性文件内容:Java 希卡里普和德比,java,jdbc,derby,hikaricp,Java,Jdbc,Derby,Hikaricp,我使用以下属性文件内容: driverClassName=org.apache.derby.jdbc.EmbeddedDriver jdbcUrl=jdbc:derby:D:\\development\\databases\\test;create=true connectionTimeout=3000 及 期间 new HikariDataSource(config); 将引发以下异常: 原因: java.sql.SQLTransientConnectionException: Hikar
driverClassName=org.apache.derby.jdbc.EmbeddedDriver
jdbcUrl=jdbc:derby:D:\\development\\databases\\test;create=true
connectionTimeout=3000
及
期间
new HikariDataSource(config);
将引发以下异常:
原因:
java.sql.SQLTransientConnectionException: HikariPool-0 - Connection is not available, request timed out after 3002ms.
kari.pool.HikariPool.getConnection(HikariPool.java:195)
at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:147)
at com.zaxxer.hikari.pool.HikariPool.initializeConnections(HikariPool.java:510)
我看到的是数据库目录已经创建
我做错了什么
derby版本:10.10.1.1
HikariCP版本:2.4.3
更新
这个解决方案很简单。连接超时时间太短了。
如果数据库不存在,创建数据库只需要一些时间。
增加连接超时后,一切正常。何时引发此异常?请显示您使用的代码。例如,如果在代码中未关闭连接,并且连接数达到最大值(默认值:10),则可能会发生这种情况。如果将反斜杠替换为正斜杠-:路径名称中的路径分隔符为正斜杠(/),即使是在Windows路径名中。@vanOekel:如果没有HikariCP,用正斜杠替换反斜杠也无助于运行它。。。当您找到有效的连接URL时,将其插入HikariCP。derby文档给出的示例URL是:
jdbc:derby:c:/databases/salesdb
java.sql.SQLTransientConnectionException: HikariPool-0 - Connection is not available, request timed out after 3002ms.
kari.pool.HikariPool.getConnection(HikariPool.java:195)
at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:147)
at com.zaxxer.hikari.pool.HikariPool.initializeConnections(HikariPool.java:510)