Hi
Using the manager to get the connection is hard code way
and using jndi gives you the ability to change the connection properties in deployment .
using manager make you coupled within the connection you made , and in using jndi you are not.
another thing :
I used jndi and datasources while i need the conection to be managed by container and i need connection pooling.
I think its another benefits of using container managed (jndi based) connection management than plain
jdbc one.
hope it helps