看看下面的代码。1. 我正在为stardog 创建一个连接池
2. 从池中获取一个连接。3. 使用后将连接返回池。
我的问题是如果我这样做aConn.close()
而不是回到游泳池会发生什么。
ConnectionConfiguration aConnConfig = ConnectionConfiguration
.to("testConnectionPool")
.credentials("admin", "admin");
ConnectionPoolConfig aConfig = ConnectionPoolConfig
.using(aConnConfig)
.minPool(10)
.maxPool(1000)
.expiration(1, TimeUnit.HOURS)
.blockAtCapacity(1, TimeUnit.MINUTES);
// now i can create my actual connection pool
ConnectionPool aPool = aConfig.create();
// if I want a connection object...
Connection aConn = aPool.obtain();
// now I can feel free to use the connection object as usual...
// and when I'm done with it, instead of closing the connection,
//I want to return it to the pool instead.
aPool.release(aConn);
// and when I'm done with the pool, shut it down!
aPool.shutdown();
如果我关闭连接会发生什么aConn.close();
每当我在没有池对象的任何类中使用连接时,我都会问的主要原因aPool.release(aConn);
是否建议这样做。它会破坏池的使用吗?