Hi Cyc,
I would also go with the second option. It is the container's responsibility to manage the pool. I would leave it up to the container. I believe it would be just as efficient to use the container as it would be to pass the connection object to different SQL statements depending on how you had your container configured.
Just my $.02
Regards,
Ryan
SCJP 1.4, SCWCD
Java: The power, elegance, and simplicity of a hand grenade