Maven দিয়ে JPA ডিপেনডেন্সি যোগ করা

JPA সেটআপ এবং ইন্সটলেশন - জেপিএ  (JPA) - Java Technologies

291

JPA (Java Persistence API) একটি Java API যা ডেটাবেসের সাথে অবজেক্ট-রিলেশনাল ম্যাপিং (ORM) পরিচালনা করতে ব্যবহৃত হয়। JPA ডেটাবেসের টেবিল এবং Java অবজেক্টের মধ্যে সম্পর্ক স্থাপন করে, যা ডেটাবেসে ডেটা প্রবাহিত এবং পুনরুদ্ধার করতে সহজ করে তোলে।

JPA প্রজেক্টে ব্যবহারের জন্য Maven দিয়ে ডিপেনডেন্সি যোগ করতে হবে। নিচে Maven প্রকল্পে JPA ডিপেনডেন্সি যোগ করার পদ্ধতি দেখানো হলো।


১. JPA ডিপেনডেন্সি যোগ করা

JPA-এর কার্যকারিতা পেতে Maven প্রকল্পে সঠিক ডিপেনডেন্সি অন্তর্ভুক্ত করা হয়। সবচেয়ে জনপ্রিয় JPA ইমপ্লিমেন্টেশন Hibernate। Hibernate একটি ওপেন সোর্স ORM ফ্রেমওয়ার্ক যা JPA স্পেসিফিকেশন অনুসরণ করে।

১.১ Hibernate JPA ডিপেনডেন্সি

আপনার pom.xml ফাইলে Hibernate JPA ডিপেনডেন্সি যোগ করতে হবে। এটি আপনার Maven প্রকল্পে Hibernate লাইব্রেরি ইনস্টল করবে।

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>5.6.10.Final</version> <!-- এখানে আপনি সর্বশেষ সংস্করণ ব্যবহার করতে পারেন -->
</dependency>

১.২ JPA API ডিপেনডেন্সি

Hibernate ব্যবহারের জন্য JPA API ডিপেনডেন্সিও অন্তর্ভুক্ত করা প্রয়োজন, যা JPA স্পেসিফিকেশন অনুযায়ী কাজ করবে।

<dependency>
    <groupId>javax.persistence</groupId>
    <artifactId>javax.persistence-api</artifactId>
    <version>2.2</version> <!-- সর্বশেষ সংস্করণ -->
</dependency>

১.৩ JPA ইমপ্লিমেন্টেশন (EclipseLink বা Hibernate)

যদি আপনি EclipseLink বা অন্য কোনো JPA ইমপ্লিমেন্টেশন ব্যবহার করতে চান, তবে সেগুলোর ডিপেনডেন্সিও Maven প্রকল্পে যুক্ত করতে হবে।

EclipseLink JPA ডিপেনডেন্সি:

<dependency>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>javax.persistence</artifactId>
    <version>2.2.2</version>
</dependency>

২. ডেটাবেস সংযোগ এবং JPA কনফিগারেশন

JPA ব্যবহারের জন্য persistence.xml ফাইলের মাধ্যমে ডেটাবেস সংযোগ এবং কনফিগারেশন করতে হবে। এই ফাইলটি সাধারণত META-INF/ ফোল্ডারে রাখা হয়। উদাহরণস্বরূপ, একটি সাধারণ persistence.xml কনফিগারেশন:

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_2_1.xsd"
    version="2.1">
    
    <persistence-unit name="myJpaUnit">
        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
        <class>com.example.model.Person</class> <!-- আপনার Entity ক্লাস যুক্ত করুন -->
        <properties>
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <property name="hibernate.show_sql" value="true"/>
            <property name="hibernate.format_sql" value="true"/>
            <property name="hibernate.connection.driver_class" value="com.mysql.cj.jdbc.Driver"/>
            <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/mydb"/>
            <property name="hibernate.connection.username" value="root"/>
            <property name="hibernate.connection.password" value="password"/>
        </properties>
    </persistence-unit>
</persistence>

এই কনফিগারেশনে:

  • hibernate.dialect: এটি ডেটাবেসের নির্দিষ্ট ডায়ালেক্ট চিহ্নিত করে (এখানে MySQLDialect ব্যবহার করা হয়েছে)।
  • hibernate.hbm2ddl.auto: এই প্রপার্টি ডেটাবেসের স্কিমা আপডেট করার জন্য ব্যবহৃত হয়। update মানে Hibernate ডেটাবেস স্কিমা আপডেট করবে।
  • hibernate.connection.url: ডেটাবেসের URL, যেখানে আপনার ডেটাবেস সংযুক্ত হবে।
  • hibernate.connection.username/password: ডেটাবেসের ইউজারনেম এবং পাসওয়ার্ড।

৩. JPA ব্যবহার করার উদাহরণ

Entity ক্লাস তৈরি করা

JPA Entity ক্লাসে ডেটাবেস টেবিলের সাথে সম্পর্কিত ফিল্ডগুলো থাকতে হবে। উদাহরণস্বরূপ, একটি Person Entity ক্লাস:

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;

@Entity
public class Person {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String name;
    private int age;

    // Getters and Setters
}

JPA রেপোজিটরি বা EntityManager ব্যবহার

JPA ডেটাবেস অপারেশন করার জন্য EntityManager বা JPA Repository ব্যবহার করা যায়। উদাহরণস্বরূপ, একটি Person অবজেক্ট সংরক্ষণ করার জন্য:

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class JpaExample {
    public static void main(String[] args) {
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("myJpaUnit");
        EntityManager em = emf.createEntityManager();

        Person person = new Person();
        person.setName("John Doe");
        person.setAge(30);

        // Save to database
        em.getTransaction().begin();
        em.persist(person);
        em.getTransaction().commit();

        em.close();
        emf.close();
    }
}

সারাংশ


JPA (Java Persistence API) ডেটাবেসের সাথে অবজেক্ট রিলেশনাল ম্যাপিং (ORM) করতে ব্যবহৃত হয় এবং Maven দিয়ে JPA ডিপেনডেন্সি যোগ করা সহজ। Hibernate বা অন্য কোনো JPA ইমপ্লিমেন্টেশন ডিপেনডেন্সি Maven প্রকল্পে যোগ করা যেতে পারে, এবং persistence.xml কনফিগারেশন ফাইলে ডেটাবেস সংযোগ এবং অন্যান্য JPA সেটিংস কনফিগার করা হয়। এরপর, JPA Entity ক্লাস তৈরি করে ডেটাবেসে ডেটা সংরক্ষণ বা রিট্রিভ করা যায়।

Content added By
Promotion

Are you sure to start over?

Loading...