Ho capito...ho letto la documentazioni di JavaEE a riguardo....in poche parole creano una Connection SINGLETON per i processi multithread, cose cha in JavaSE devi farti manualmente....
Beh, se ho capito male è ovvio che ci metta tanto....infatti:

1) Le operazioni di Connessione al db sono note per esser molto costose in quanto tempo e risorse occupate.
2) Le Operazioni di sincronizzazione ( SINGLETON ) molto meno, ma se aggiunte ad operazioni di connessioni danno il loro contributo....

Non mi sono mai cimentato in JavaEE in quanto programma anche per il web in JavaSE (imposizioni aziendali....) però ultimamente mi ci stavo avvicinando per fattacci miei.... ma lo trovo una miglioria per alcuni punti ( questo per esempio )....