العمل مع قواعد البيانات في Java: PostgreSQL و MongoDB للمبتدئين

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

العمل مع قواعد البيانات في Java: PostgreSQL و MongoDB للمبتدئين



نادراً ما يخلو تطوير Java الحديث من التفاعل مع قواعد البيانات. بغض النظر عما إذا كنت تقوم بإنشاء تطبيق ويب أو خدمة جوال أو نظام مؤسسي، فإن القدرة على العمل مع قواعد بيانات SQL و NoSQL هي مهارة إلزامية. في هذه المقالة، سنشرح كيفية الاتصال بـ PostgreSQL (قاعدة بيانات علائقية) و MongoDB (قاعدة بيانات موجهة للمستندات) من Java، وتنفيذ العمليات الأساسية وتجنب الأخطاء النموذجية.



المادة موجهة للمطورين المبتدئين الذين هم على دراية بالفعل بأساسيات Java (الفئات، الطرق، الاستثناءات) ويريدون تعلم كيفية العمل مع البيانات. يمكن نسخ جميع أمثلة الكود وتشغيلها في بيئة التطوير الخاصة بك.



1. إعداد البيئة والتبعيات



للعمل مع قواعد البيانات في Java، ستحتاج إلى إضافة المكتبات المناسبة. سنستخدم Maven لإدارة التبعيات. إذا كنت تستخدم Gradle أو أداة بناء أخرى، فسيكون المبدأ مشابهاً.



تبعيات PostgreSQL (عبر JDBC)

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


تبعيات MongoDB (المشغل الرسمي)

<dependency>    <groupId>org.mongodb</groupId>    <artifactId>mongodb-driver-sync</artifactId>    <version>4.11.1</version></dependency>


بعد إضافة التبعيات، قم بتحديث المشروع (Maven → Reload Project). تأكد من تثبيت قواعد البيانات نفسها وتشغيلها (محلياً أو عبر Docker).



2. العمل مع PostgreSQL في Java



PostgreSQL هي قاعدة بيانات علائقية كلاسيكية. للتفاعل معها من Java، يتم استخدام JDBC (Java Database Connectivity). سننظر في الدورة الكاملة: الاتصال، إنشاء جدول، إدراج وقراءة البيانات.



2.1. الاتصال بقاعدة البيانات

سنقوم بإنشاء فئة PostgresConnector مع طريقة للحصول على الاتصال:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;

public class PostgresConnector { private static final String URL = "jdbc:postgresql://localhost:5432/testdb"; private static final String USER = "postgres"; private static final String PASSWORD = "your_password";

public static Connection getConnection() throws SQLException { return DriverManager.getConnection(URL, USER, PASSWORD); }}


2.2. إنشاء جدول وإدراج البيانات

نستخدم Statement و PreparedStatement لتنفيذ استعلامات SQL:

import java.sql.*;

public class PostgresExample { public static void main(String[] args) { String createTableSQL = "CREATE TABLE IF NOT EXISTS users (" + "id SERIAL PRIMARY KEY, " + "name VARCHAR(100) NOT NULL, " + "email VARCHAR(100) UNIQUE NOT NULL)";

String insertSQL = "INSERT INTO users (name, email) VALUES (?, ?)";

try (Connection conn = PostgresConnector.getConnection(); Statement stmt = conn.createStatement()) {

// إنشاء الجدول stmt.execute(createTableSQL); System.out.println("تم إنشاء جدول users (أو موجود بالفعل).");

// إدراج البيانات عبر PreparedStatement (آمن من حقن SQL) try (PreparedStatement pstmt = conn.prepareStatement(insertSQL)) { pstmt.setString(1, "إيفان بيتروف"); pstmt.setString(2, "ivan@example.com"); pstmt.executeUpdate(); System.out.println("تمت إضافة المستخدم."); }

} catch (SQLException e) { e.printStackTrac

المدونات

توصيات الكتب