Je lis la spécification Java JDBC (vr.4) et j'ai rencontré cette déclaration:
DataSource - cette interface a été introduite dans l'API de package optionnel JDBC 2.0. Il est préférable à DriverManager car il permet aux détails sur la source de données sous-jacente d'être transparents pour l'application
Ce que j'essaie de comprendre, c'est quelle est la différence entre a Connection
et a DataSource
, et pourquoi il existe. Je veux dire, le bloc ci-dessus indique que les détails sur une source de données sont transparents pour l'application, mais l'externalisation des propriétés de la base de données telles que le nom d'utilisateur, le mot de passe, l'url, etc. dans un fichier de propriétés, puis l'utilisation de DriverManager ne fonctionneraient-elles pas de la même manière?
Et l' DataSource
interface est-elle créée uniquement pour avoir un moyen commun de renvoyer des connexions qui peuvent être regroupées, etc.? Dans Java EE, le serveur d'applications implémente-t-il cette interface et les applications déployées pour avoir une référence à une source de données au lieu d'une connexion?