【发布时间】:2012-07-21 05:30:18
【问题描述】:
我们在处理连接池时通常有以下代码:
connection c = pool.borrow();
try {
business-logic-using-connection(c);
}
catch(connectionException e) {
connectionBad = true;
}
finally{
if (connectionBad) {
pool.evict(c);
} else {
pool.return(c);
}
}
问题是如何使这个样板代码更简单,以便可以执行以下操作:
getConnectionAndDoWork(pool, business-logic-code)
可以插入他们的业务逻辑,而不必到处重复相同的连接管理代码。一种方法是为业务逻辑代码创建一个接口,例如doWorkWithConnection,它需要一个连接并做一些工作。但是,这限制了应该返回的业务逻辑代码;
有没有更好的方法在 Java 中做到这一点?
【问题讨论】:
标签: java connection-pooling meta