Ich lese die Java JDBC-Spezifikation (vr. 4) und bin auf diese Aussage gestoßen:
DataSource - Diese Schnittstelle wurde in die optionale JDBC 2.0-Paket-API eingeführt. Es wird gegenüber DriverManager bevorzugt, da Details zur zugrunde liegenden Datenquelle für die Anwendung transparent sind
Ich versuche zu verstehen, was der Unterschied zwischen a Connection
und a DataSource
ist und warum er existiert. Ich meine, der obige Block besagt, dass die Details zu einer Datenquelle für die Anwendung transparent sind, aber würden wir Datenbankeigenschaften wie Benutzername, Kennwort, URL usw. nicht in einer Eigenschaftendatei auslagern und dann DriverManager auf die gleiche Weise verwenden?
Und wird die DataSource
Schnittstelle nur erstellt, um eine gemeinsame Methode zum Zurückgeben von Verbindungen zu haben, die gepoolt werden können usw.? Implementiert der Anwendungsserver in Java EE diese Schnittstelle und die bereitgestellten Anwendungen, um anstelle einer Verbindung einen Verweis auf eine Datenquelle zu erhalten?