Travailler avec les bases de données en Java : PostgreSQL et MongoDB pour débutants

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Travailler avec les bases de données en Java : PostgreSQL et MongoDB pour débutants

\n\n

Dans le développement moderne en Java, savoir travailler avec les bases de données (BD) est l'une des compétences clés. Que vous créiez une application web, un service mobile ou un système d'entreprise, vous aurez besoin de stocker, récupérer et traiter des données. Dans cet article, nous examinerons deux systèmes de gestion de bases de données (SGBD) populaires : le relationnel PostgreSQL et l'orienté documents MongoDB. Vous apprendrez comment vous y connecter depuis une application Java, effectuer des opérations de base et comprendrez dans quels cas choisir l'une ou l'autre technologie. Le matériel est destiné aux développeurs débutants, donc tous les exemples de code sont aussi simples que possible et accompagnés de commentaires.

\n\n

1. Bases du travail avec PostgreSQL en Java

\n\n

PostgreSQL est un puissant SGBD objet-relationnel open source. Pour interagir avec lui depuis Java, on utilise le pilote JDBC (Java Database Connectivity). Examinons le processus étape par étape de connexion et d'exécution de requêtes.

\n\n

1.1. Connexion du pilote et configuration

\n\n

La première étape consiste à ajouter la dépendance à votre projet. Si vous utilisez Maven, ajoutez le bloc suivant dans pom.xml :

\n\n
<dependency>\n    <groupId>org.postgresql</groupId>\n    <artifactId>postgresql</artifactId>\n    <version>42.7.1</version>\n</dependency>
\n\n

Pour Gradle, ajoutez la ligne dans build.gradle :

\n\n
implementation 'org.postgresql:postgresql:42.7.1'
\n\n

1.2. Création d'une table et insertion de données

\n\n

Supposons que nous ayons une base de données testdb avec un utilisateur user et un mot de passe pass. Créons une table simple users et ajoutons quelques enregistrements.

\n\n
import java.sql.*;\n\npublic class PostgresExample {\n    public static void main(String[] args) {\n        String url = "jdbc:postgresql://localhost:5432/testdb";\n        String user = "user";\n        String password = "pass";\n\n        try (Connection conn = DriverManager.getConnection(url, user, password);\n             Statement stmt = conn.createStatement()) {\n\n            // Création de la table\n            String createTableSQL = "CREATE TABLE IF NOT EXISTS users (" +\n                                    "id SERIAL PRIMARY KEY, " +\n                                    "name VARCHAR(100) NOT NULL, " +\n                                    "email VARCHAR(100) UNIQUE)";\n            stmt.executeUpdate(createTableSQL);\n            System.out.println("Table créée ou déjà existante.");\n\n            // Insertion de données\n            String insertSQL = "INSERT INTO users (name, email) VALUES " +\n                               "('Иван Петров', 'ivan@example.com'), " +\n                               "('Мария Смирнова', 'maria@example.com')";\n            int rowsInserted = stmt.executeUpdate(insertSQL);\n            System.out.println("Lignes ajoutées : " + rowsInserted);\n\n        } catch (SQLException e) {\n            e.printStackTrace();\n        }\n    }\n}
\n\n

1.3. Lecture de données avec PreparedStatement

\n\n

Pour travailler en toute sécurité avec les entrées utilisateur, utilisez PreparedStatement. Cela prévient les injections SQL.

\n\n
String selectSQL = "SELECT * FROM users WHERE name LIKE ?";\ntry (PreparedStatement pstmt = conn.prepareStatement(selectSQL)) {\n    pstmt.setString(1, "%Иван%");\n    ResultSet rs = pstmt.executeQuery();\n\n    while (rs.next()) {\n        int id = rs.getInt("id");\n        String name = rs.getString("name");\n        String email = rs.getString("email");\n        System.out.println("ID : " + id + ", Nom : " + name + ", Email : " + email);\n    }\n} catch (SQLException e) {\n    e.printStackTrace();\n}
\n\n

Comme vous pouvez le voir, le travail avec PostgreSQL en Java est standard et bien documenté.

Blogs

Book Recommendations