Oracle’s Connection Cache
Recall that in Chapter 4 we talked about a cached pool of connections used by servlets. When a servlet needed a connection, it drew one from the pool. The servlet did its work, and when it was done, it returned the connection back to the pool. The benefit of using cached connections is that a servlet does not need to go through the resource-intensive task of opening a new database connection each time the servlet is invoked. Also in Chapter 4, I showed a rudimentary connection caching tool. Rudimentary as it was, it still required a fair bit of rather complex code to implement. As part of the JDBC 2.0 Extension API, Oracle provides a ready-made connection cache interface along with a sample implementation. Instead of wasting your precious time doing something that has already been done for you, you can use Oracle’s connection cache immediately and in turn concentrate on the business problem at hand.
At the heart of Oracle’s connection caching framework is the connection pool data source. It’s important you understand what that is and how it works before getting into the details of the connection cache framework itself.
ConnectionPoolDataSources
A
ConnectionPoolDataSource
is a
DataSource
that can be pooled. Instead of returning
a Connection object as a
DataSource object does, a
ConnectionPoolDataSource returns a
PooledConnection
object. A
PooledConnection object itself holds a physical
database connection that is pooled. In turn, a
PooledConnection returns ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access