CodeGym/Cours Java/All lectures for FR purposes/Connexion à la base de données depuis une application Jav...

Connexion à la base de données depuis une application Java

Disponible

Connectivité de la base de données Java

Vous connaissez les bases de SQL. C'est bon. Mais aujourd'hui, vous vous sentirez encore mieux. Aujourd'hui, vous allez commencer à apprendre à travailler avec une base de données à partir d'une application Java.

Il existe de nombreux SGBD différents, c'est pourquoi les créateurs de Java ont décidé de normaliser le fonctionnement d'une application Java avec les bases de données. Et ils ont appelé ce standard - JDBC : Java DataBase Connectivity .

JDBC a 3 interfaces principales :

  • Connexion - responsable de la connexion à la base de données
  • Déclaration - responsable de l'interrogation de la base de données
  • ResultSet - responsable du résultat de la requête à la base de données

En fait, c'est tout. Et nous n'apprendrons même pas toutes les méthodes de toutes les interfaces. Seuls des exemples de travail, que nous compliquerons progressivement.

JDBC est quelque peu similaire au travail avec des servlets. Les créateurs de JDBC ont écrit plusieurs interfaces et l'appellent fièrement l'API Java DataBase. Et la mise en œuvre de ces interfaces a été confiée à ... les créateurs du SGBD. Comment il est mis en œuvre là-bas - personne ne s'en soucie. Fonctionne bien.

Il existe quatre versions de JDBC et nous examinerons la dernière. Et pas parce qu'elle est la plus cool, mais parce qu'elle est la plus simple.

Gestionnaire de pilotes JDBC

L'application Java et la base de données communiquent entre elles via une bibliothèque appelée pilote JDBC. Il s'agit d'un ensemble de classes qui implémentent l'API JDBC pour un SGBD particulier.

Le pilote JDBC correct est sélectionné à l'aide d'une classe appelée DriverManager . Leur interaction peut être représentée comme suit :

Le fait est que vous pouvez utiliser In-Memory-DB, No-SQL-DB ou même une base de données intégrée à une application Android. En tant que développeur Java, ces nuances ne vous concernent pas du tout. Le gestionnaire de pilotes sélectionnera le bon pilote JDBC pour vous et tout fonctionnera comme sur des roulettes.

Au fait, comment fait-il ?

Connexion au serveur MySQL

Vous souvenez-vous de ce dont vous aviez besoin pour vous connecter à un serveur SQL local via MySQL Workbench ? Si j'ai oublié, alors je vous rappelle, vous aviez besoin de trois choses :

  • héberger
  • connexion
  • mot de passe

Tout est clair avec le login et le mot de passe, et host, si vous vous en souvenez, est le nom de l'ordinateur sur lequel se trouve le serveur. S'il se trouve sur votre ordinateur local, vous devez spécifier localhost comme nom d'hôte. Et si ce n'est pas local ?

Ensuite, vous devez utiliser ... URL. URL signifie Universal Resource Locator . Il peut être utilisé pour spécifier l'emplacement de n'importe quoi sur le réseau : un site, une imprimante, un serveur SQL. En fait, l'URL est également utilisée pour accéder au serveur SQL local. Cela ressemble à ceci :

mysql://localhost:3306/db_scheme
  • mysql est un protocole serveur
  • localhost - nom d'hôte sur le réseau
  • 3306 - port sur lequel les demandes sont faites
  • db_scheme - nom du schéma (nom de la base de données)

Note. Le nom de la base de données peut être omis. Mais si le serveur stocke de nombreux schémas de base de données, différents utilisateurs et différents droits d'accès sont généralement créés pour eux. Et si l'utilisateur sous lequel vous vous connectez au serveur SQL n'a pas accès à toutes les bases de données, vous devez absolument spécifier le nom de la base de données spécifique à laquelle vous avez accès.

À la fin de cette URL, il peut y avoir divers paramètres, types d'encodage, fuseau horaire, qui sont considérés comme des paramètres pour la nouvelle connexion à la base de données en cours d'établissement.

De plus, le protocole peut être composite. Si toutes les communications avec le serveur de base de données s'effectuent via un canal crypté à l'aide du protocole SSH, l'URL peut être spécifiée comme ceci :

ssh:mysql://localhost:3306/db_scheme

Un protocole n'est pas nécessairement un programme externe. Par exemple, si vous travaillez avec un serveur utilisant le protocole JNDI, vous pouvez le spécifier comme ceci :

jndi:mysql://localhost:3306/db_scheme

Et si vous voulez travailler avec le protocole API JDBC, alors vous devez écrire comme ceci :

jdbc:mysql://localhost:3306/db_scheme

Lorsque vous essayez de créer une connexion à une base de données, le gestionnaire de pilotes JDBC analyse votre URL SQL-db et détermine le nom du pilote JDBC à partir du nom du protocole. Voici une petite astuce.

Commentaires
  • Populaires
  • Nouveau
  • Anciennes
Tu dois être connecté(e) pour laisser un commentaire
Cette page ne comporte pas encore de commentaires