What is your opinion?
One problem is that database resources are 'system' resources and not '
java' resources. This tends to make them heavier, and also causes issues like resource leakage problems. This is true of connections when not using pooling though. A 'problem' with pooling is that you have to pay for all of these resources at the beginning. Opening and closing individual resources is slow, but you only use the resources you need. Pools are required to keep connections ready in case you need them.