Thomas Kyte is a well-known Oracle professional who uses to run the excellent AskTom web site, where he answers on all sorts of questions related to the Oracle database engine. At the bottom of one of the questions/answers exchanges called caching prepared callable statements in java you can read the following gem:
Here's the reason why we implemented our own caching scheme.Priceless. Just priceless. If only I could have half of Tom's clarity in explaining things...
1) We can use any JDBC driver with our own caching scheme. We're not dependent on ORACLE. Not all JDBC implementation have a built-in caching scheme.
1) that is not a benefit to a database guy (any database guy). guess what happens if you take the data away? you've got a bunch of bits that do nothing called code. guess what happens if you take the code away? you have all of your data -- you can start over if you like.