Apache Derby এর Embedded Mode হল একটি বিশেষ মোড যেখানে ডেটাবেস সার্ভার ছাড়াই ডেটাবেস অ্যাপ্লিকেশন চলতে পারে। এতে Java অ্যাপ্লিকেশন থেকে ডেটাবেসের সাথে সরাসরি যোগাযোগ করা যায়, এবং ডেটাবেসের সমস্ত কার্যক্রম Java প্রোগ্রামের ভিতরেই পরিচালিত হয়। এটি সাধারণত ডেটাবেস অ্যাপ্লিকেশনগুলিতে ব্যবহৃত হয় যেখানে ডেটাবেস সার্ভার আলাদা না হয়ে সরাসরি অ্যাপ্লিকেশনের অংশ হিসেবে কাজ করে।
Embedded Mode এ, Apache Derby আপনার Java অ্যাপ্লিকেশনের অংশ হয়ে ওঠে এবং ডেটাবেস সংযোগটি আপনার অ্যাপ্লিকেশন পরিবেশের মধ্যে স্বাভাবিকভাবে কাজ করে। এটি ডেটাবেস সার্ভারের প্রয়োজনীয়তা কমিয়ে আনে এবং Java অ্যাপ্লিকেশনগুলির মধ্যে ডেটাবেস ব্যবহারের একটি সরল, হালকা পদ্ধতি সরবরাহ করে।
প্রথমেই Apache Derby ডাউনলোড করুন:
ডাউনলোড করার পর এটি আপনার প্রোজেক্টে যোগ করুন। যদি আপনি Maven ব্যবহার করেন, তবে এটি pom.xml এ নিচের মত নির্দিষ্ট করে দিতে পারেন:
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.15.2.0</version>
</dependency>
Apache Derby Embedded Mode এ ডেটাবেসের সাথে সংযোগ করতে, আপনি সাধারণভাবে DriverManager ব্যবহার করতে পারেন, যা JDBC API এর মাধ্যমে ডেটাবেসের সাথে যোগাযোগ করে।
নিম্নলিখিত কোডটি Derby Embedded Mode-এ ডেটাবেসের সাথে সংযোগ স্থাপন করে:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class DerbyEmbeddedExample {
public static void main(String[] args) {
// ডেটাবেস URL, যেখানে ডেটাবেস সংরক্ষিত হবে
String dbURL = "jdbc:derby:myDB;create=true";
Connection conn = null;
try {
// Derby ড্রাইভার লোড করা
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
// ডেটাবেস সংযোগ
conn = DriverManager.getConnection(dbURL);
System.out.println("ডেটাবেস সংযোগ সফল!");
// স্টেটমেন্ট তৈরি করা
Statement stmt = conn.createStatement();
// টেবিল তৈরি করা
String createTableSQL = "CREATE TABLE employees (id INT, name VARCHAR(100))";
stmt.executeUpdate(createTableSQL);
System.out.println("টেবিল তৈরি হয়েছে।");
// ডেটাবেস সংযোগ বন্ধ করা
stmt.close();
conn.close();
System.out.println("সংযোগ বন্ধ করা হয়েছে।");
} catch (SQLException | ClassNotFoundException e) {
e.printStackTrace();
}
}
}
একটি টেবিল তৈরি করার পর, আপনি ডেটাবেসে ডেটা ইনসার্ট করতে পারেন। নিম্নলিখিত কোডটি employees
টেবিলে ডেটা ইনসার্ট করার উদাহরণ:
String insertSQL = "INSERT INTO employees (id, name) VALUES (1, 'John Doe')";
stmt.executeUpdate(insertSQL);
System.out.println("ডেটা ইনসার্ট করা হয়েছে।");
ডেটাবেসে ইনসার্ট করা ডেটা পড়তে, আপনি SELECT কুয়েরি ব্যবহার করতে পারেন:
import java.sql.ResultSet;
String selectSQL = "SELECT * FROM employees";
ResultSet rs = stmt.executeQuery(selectSQL);
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
rs.close();
অ্যাপ্লিকেশনটির কাজ শেষ হলে, close() মেথড ব্যবহার করে ডেটাবেসের সংযোগ বন্ধ করা উচিত।
conn.close();
Apache Derby Embedded Mode একটি সহজ, হালকা এবং কার্যকরী ডেটাবেস সমাধান যা Java অ্যাপ্লিকেশনগুলির মধ্যে ডেটাবেস ব্যবহারের জন্য আদর্শ। এটি ডেটাবেস সার্ভারের প্রয়োজন ছাড়াই ডেটাবেস সংরক্ষণ এবং পরিচালনা করতে সাহায্য করে, যা ছোট অ্যাপ্লিকেশন বা প্রোটোটাইপ ডেভেলপমেন্টের জন্য উপযুক্ত। তবে, মাল্টি-ইউজার এবং উচ্চ পারফরম্যান্সের অ্যাপ্লিকেশনের জন্য এটি সীমাবদ্ধ হতে পারে, এবং সেক্ষেত্রে Network Server Mode ব্যবহারের পরামর্শ দেওয়া হয়।