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

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

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

ابدأ الدورة

مقدمة للعمل مع قواعد البيانات في Java

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



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

PostgreSQL هي قاعدة بيانات كائنية-علائقية قوية مفتوحة المصدر. للتفاعل معها من Java، يتم استخدام برنامج تشغيل JDBC (اتصال قاعدة بيانات Java).



1.1 توصيل برنامج تشغيل PostgreSQL

أولاً، أضف التبعية إلى مشروعك (Maven):

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


1.2 إنشاء اتصال وتنفيذ الاستعلامات

مثال للاتصال بقاعدة البيانات mydb على خادم محلي:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;

public class PostgresExample { public static void main(String[] args) { String url = "jdbc:postgresql://localhost:5432/mydb"; String user = "postgres"; String password = "password";

try (Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement()) {

// إنشاء جدول stmt.executeUpdate("CREATE TABLE IF NOT EXISTS users (id SERIAL PRIMARY KEY, name VARCHAR(100), email VARCHAR(100))");

// إدراج بيانات stmt.executeUpdate("INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com')");

// استرجاع البيانات ResultSet rs = stmt.executeQuery("SELECT * FROM users"); while (rs.next()) { System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name")); } } catch (Exception e) { e.printStackTrace(); } }}


1.3 استخدام PreparedStatement

للحماية من حقن SQL، استخدم دائمًا PreparedStatement:

String sql = "INSERT INTO users (name, email) VALUES (?, ?)";try (PreparedStatement pstmt = conn.prepareStatement(sql)) {    pstmt.setString(1, "Bob");    pstmt.setString(2, "bob@example.com");    pstmt.executeUpdate();}


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

MongoDB هي قاعدة بيانات NoSQL تخزن البيانات في مستندات شبيهة بـ JSON. يتم استخدام برنامج تشغيل MongoDB Java الرسمي للعمل معها.



2.1 توصيل برنامج تشغيل MongoDB

أضف التبعية إلى Maven:

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


2.2 الاتصال بقاعدة البيانات وعمليات CRUD

مثال للعمل مع مجموعة users:

import com.mongodb.client.MongoClient;import com.mongodb.client.MongoClients;import com.mongodb.client.MongoCollection;import com.mongodb.client.MongoDatabase;import org.bson.Document;

public class MongoDBExample { public static void main(String[] args) { // الاتصال try (MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017")) { MongoDatabase database = mongoClient.getDatabase("mydb"); MongoCollection<Document> collect

المدونات

توصيات الكتب