web-dev-qa-db-fra.com

Comment obtenir l'URL de la base de données à partir de Java.sql.Connection?

Pour une instance Connection donnée, comment puis-je trouver l'URL que le Connection utilise pour connecter la base de données? Est-ce quelque part dans Properties retourné par la méthode Connection.getClientInfo() ?

Si vous avez besoin de moi pour fournir une description plus claire, tous les commentaires sont les bienvenus. Merci

57
Rasto

Connection a la getMetaData() pour retourner DatabaseMetaData . DatabaseMetaData a la getURL() pour renvoyer l'URL de ce SGBD.

95
Ken Chan

Je pense que vous pouvez utiliser l'objet DatabaseMetaData à partir de la connexion, puis obtenir l'URL. Essayer:

DatabaseMetaData dmd = connection.getMetaData();
String url = dmd.getURL();
26
Lucas de Oliveira

A l'intérieur de l'objet Connection, vous avez un objet de type DatabaseMetaData, il contient beaucoup d'informations sur la base de données.

Lucas de Oliveira vous a donné un bon exemple de code.

Et voici la documentation de l'objet: Interface DatabaseMetaData

2
Mehdi

connection.getClientInfo () a tous les détails liés à la connexion. Il renvoie un objet de propriétés. Vous pouvez récupérer la valeur de la propriété "password" pour récupérer le mot de passe utilisé pour l'objet de connexion.

Veuillez me faire savoir si cela résout votre problème.

0
Amit