menusearch
javapro.ir

JPA چیست و چه کاربردی در زبان جاوا دارد؟

جستجو
پنج شنبه ۱ آذر ۱۴۰۳ | ۱۴:۱۱:۱۲
۱۳۹۹/۱۱/۶ دوشنبه
(1)
(1)
JPA چیست و چه کاربردی در زبان جاوا دارد؟
JPA چیست و چه کاربردی در زبان جاوا دارد؟

کاربرد JPA در زبان برنامه نویسی جاوا چیست؟

 

 

 

 

 

 

مباحث پرکاربرد و مهم زبان جاوا رو به صورت رایگان آموزش ببین

 

 

 

 

 

 

JPA مجموعه ای از مفاهیم را تعریف می‌کند که می‌تواند توسط هر ابزار یا چارچوبی پیاده سازی شود.از طریق JPA توسعه دهنده می‌تواند نقشه ها، ذخیره، به روز رسانی و بازیابی اطلاعات را از پایگاه داده های رابطه ای به اشیا Java جاوا و بالعکس انجام دهد. JPA یک مشخصه است و چندین پیاده سازی در دسترس است.

 

 

 


 JPA چیست و چه کاربردی در زبان جاوا دارد؟
استاندارد Java ORM برای ذخیره، دسترسی و مدیریت اشیا Java جاوا در یک پایگاه داده رابطه ای به عنوان یک مشخصه، Java Persistence API مربوط به پایداری است، که بی قاعده به معنای هر مکانیزمی است که توسط آن اشیا
جاوا فرآیند برنامه را ایجاد می‌کنند. لازم نیست که همه اشیا جاوا ماندگار شوند، اما اکثر برنامه ها اشیا کلیدی تجاری را ادامه می‌دهند. مشخصات JPA به شما امکان می‌دهد مشخص کنید کدام یک از اشیا باید باقی بمانند و این اشیا چگونه باید در برنامه های جاوای شما باقی بمانند.

 

 


JPA به خودی خود یک ابزار یا چارچوب نیست. بلکه مجموعه ای از مفاهیم را تعریف می‌کند که می‌تواند توسط هر ابزار یا چارچوبی پیاده سازی شود. در حالی که مدل نقشه برداری شیء-رابطه ای JPA در اصل مبتنی بر Hibernate بود، از آن زمان تکامل یافته است. به همین ترتیب، در حالی که JPA در ابتدا برای استفاده با پایگاه داده های رابطه ای SQL در نظر گرفته شده بود، برخی از پیاده سازی های JPA برای استفاده با مجموعه داده های NoSQL تمدید شده اند. یک چارچوب محبوب که از JPA با NoSQL پشتیبانی می‌کند EclipseLink است، پیاده سازی مرجع برای JPA 2.2.

 

 

 

کجا می‌توان از JPA استفاده کرد؟
برای کاهش بار نوشتن کدهای مدیریت شی object رابطه ای، یک برنامه نویس از چارچوب "JPA Provider" پیروی می‌کند، که امکان تعامل آسان با نمونه پایگاه داده را فراهم می‌کند.

 

 

 

هر جاوا کاری این مبحث جاوا را باید بلد باشد
تعامل و چرخه در JPA

 

 


JPA و EJB
همانطور که قبلاً اشاره شد، JPA به عنوان زیرمجموعه ای از EJB 3.0 معرفی شد، اما از آن زمان به بعد به عنوان مشخصات خاص خود تکامل یافت. EJB مشخصات با تمرکز متفاوت از JPA است، و در یک ظرف
EJB اجرا می‌شود. هر ظرف EJB شامل یک لایه ماندگاری است که توسط مشخصات JPA تعریف شده است.

 

 

 


جاوا ORM چیست؟
اگرچه در اجرا متفاوت هستند، اما هر اجرای JPA نوعی لایه ORM را فراهم می‌کند. برای درک ابزارهای سازگار با JPA و JPA، باید درک کاملی از ORM داشته باشید.


نقشه برداری شی-رابطه ای وظیفه ای است که توسعه دهندگان دلیل خوبی برای جلوگیری از انجام آن به صورت دستی دارند. چارچوبی مانند Hibernate ORM یا EclipseLink آن کار را در یک کتابخانه یا چارچوب، یک لایه ORM کدگذاری می‌کند. به عنوان بخشی از معماری برنامه، لایه ORM وظیفه مدیریت تبدیل اشیا software نرم افزاری برای تعامل با جداول و ستون ها را در یک پایگاه داده رابطه ای دارد. در جاوا، لایه ORM کلاسها و اشیا جاوا را تبدیل می‌کند تا بتوان آنها را در یک پایگاه داده رابطه ای ذخیره و مدیریت کرد.


به طور پیش فرض، نام شی object باقی مانده به عنوان جدول تبدیل می‌شود و فیلدها به ستون تبدیل می‌شوند. پس از تنظیم جدول، هر ردیف جدول مربوط به یک شی در برنامه است. نگاشت اشیا قابل تنظیم است، اما پیش فرض ها به خوبی کار می‌کنند.

 

 

 

پیکربندی لایه Java ORM
وقتی پروژه جدیدی را برای استفاده از JPA راه اندازی می‌کنید، باید Datastore و ارائه دهنده JPA را پیکربندی کنید. برای اتصال به پایگاه داده انتخابی خود SQL یا (NoSQL اتصال دهنده datastore) را پیکربندی خواهید کرد. شما همچنین ارائه دهنده JPA را که چارچوبی مانند Hibernate یا EclipseLink است، گنجانده و پیکربندی کنید. اگرچه می‌توانید JPA را به صورت دستی پیکربندی کنید، بسیاری از توسعه دهندگان تصمیم می‌گیرند از پشتیبانی خارج از جعبه Spring استفاده کنند. برای نمایش نصب و راه اندازی JPA دستی و Spring-based، به "نصب و راه اندازی JPA" در زیر مراجعه کنید.

 

معماری ORM در زبان برنامه نویسی جاوا


معماری ORM

 


ماندگاری داده ها در جاوا
از منظر برنامه نویسی، لایه ORM یک لایه آداپتور است: این زبان نمودارهای شی را با زبان SQL و جداول رابطه ای تطبیق می‌دهد. لایه ORM به توسعه دهندگان شی گرا اجازه می‌دهد تا نرم افزاری بسازند که بدون هیچ گونه ترک پارادایم شی گرا، داده ها را پایدار نگه دارد.


هنگامی که از JPA استفاده می‌کنید، یک نقشه از datastore به اشیا model مدل داده برنامه خود ایجاد می‌کنید. شما به جای تعریف نحوه ذخیره و بازیابی اشیا، نگاشت بین اشیا and و پایگاه داده خود را تعریف می‌کنید، سپس JPA را فرا می‌خوانید تا ادامه یابد. اگر از یک پایگاه داده رابطه ای استفاده می‌کنید، بسیاری از ارتباطات واقعی بین کد برنامه شما و پایگاه داده توسط JDBC، Java database Connection API انجام می‌شود.


به عنوان یک مشخصه، JPA حاشیه نویسی فراداده را ارائه می‌دهد، که برای تعریف نگاشت بین اشیا and و پایگاه داده از آنها استفاده می‌کنید. هر اجرای JPA موتور مخصوص خود را برای حاشیه نویسی JPA فراهم می‌کند. مشخصات JPA همچنین PersistenceManager یا EntityManager را فراهم می‌کند، که نقاط اصلی تماس با سیستم JPA هستند (در اینجا کد منطق کسب و کار شما به سیستم می‌گوید که با اشیا ma نقشه برداری شده چه کاری انجام دهد).


برای ملموس کردن همه این موارد، لیست 1 را در نظر بگیرید که یک کلاس داده ساده برای مدل سازی یک نوازنده است.

 


لیست 1. یک کلاس داده ساده در جاوا

public class Musician {
private Long id;
private String name;
private Instrument mainInstrument;
private ArrayList performances = new ArrayList<Performance>();
public Musician( Long id, String name){ * constructor setters... * }
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public void setMainInstrument(Instrument instr){
this.instrument = instr;
}
public Instrument getMainInstrument(){
return this.instrument;
}
...Other getters and setters...
}

کلاس Musician در لیست 1 برای نگهداری داده ها استفاده می‌شود. این می‌تواند شامل داده های ابتدایی مانند قسمت نام باشد. همچنین می‌تواند با کلاس های دیگر مانند main Instrument و اجرا ارتباط برقرار کند.دلیل وجود موسیقیدان، داشتن داده است. این نوع کلاس گاهی اوقات به عنوان DTO یا انتقال داده شناخته می‌شود. DTO از ویژگی های مشترک توسعه نرم افزار است. در حالی که آنها انواع مختلفی از داده ها را در اختیار دارند، اما هیچ منطق تجاری ندارند. دوام اشیا data داده ای یک چالش فراگیر در توسعه نرم افزار است.

 

 

 

حاشیه نویسی فراداده در JPA
جادوی موجود در لیست 3 نتیجه پیکربندی است که با استفاده از حاشیه نویسی JPA ایجاد می‌شود. توسعه دهندگان از حاشیه نویسی برای اطلاع دادن به JPA برای اینکه کدام یک از اشیا باید باقی بمانند و چگونه باید بقای آنها استفاده کنند استفاده می‌کنند.
لیست 4 کلاس نوازندگان را با یک حاشیه نویسی JPA نشان می‌دهد.

 

 


لیست 4. حاشیه نویسی Entity annotation@

@Entity
public class Musician {  ..class body}


اشیا Pers ماندگار را گاه موجودی می‌نامند. پیوستن Entity به کلاسی مانند Musician به JPA اطلاع می‌دهد که این کلاس و اشیا آن باید ادامه یابد.
پیکربندی مبتنی بر حاشیه نویسی XML در مقابل
JPA همچنین از فایلهای خارجی XML به جای حاشیه نویسی برای تعریف فراداده های کلاس پشتیبانی می‌کند.

 

 

 

پیکربندی JPA
مانند اکثر چارچوبهای مدرن، JPA از برنامه نویسی طبق قرارداد استفاده می‌کند (همچنین به عنوان Convention over Configuration نیز شناخته می‌شود)، که در آن چارچوب پیکربندی پیش فرض را بر اساس بهترین روشهای صنعت فراهم می‌کند.

 

 

 

چرخه حیات JPA در زبان برنامه نویسی جاوا
پیکربندی JPA

 

 

 

 

پیکربندی متداول صرفه جویی در زمان است و در بسیاری از موارد به اندازه کافی خوب کار می‌کند. همچنین امکان تنظیم پیکربندی JPA شما وجود دارد. به عنوان مثال، می‌توانید از جدول حاوی table@ JPA برای تعیین جدولی که کلاس Musician باید در آن ذخیره شود استفاده کنید.

 

 

 

معرفی فریمورک های سازمانی زبان برنامه نویسی جاوا
جایگاه JPA در برنامه های کاربردی

 

 

 

کلید اصلی
در JPA، کلید اصلی فیلدی است که برای شناسایی منحصر به فرد هر شی در پایگاه داده استفاده می‌شود. کلید اصلی برای ارجاع و ارتباط اشیا با موجودیت های دیگر مفید است. هر زمان که یک شی را در جدول ذخیره کنید، فیلدی را نیز تعیین می‌کنید که به عنوان کلید اصلی آن استفاده شود.
JPA از استراتژی های دیگر برای تولید کلید اصلی یک شی پشتیبانی می‌کند. همچنین حاوی حاشیه نویسی برای تغییر نام رشته های منفرد است. به طور کلی، JPA به اندازه کافی انعطاف پذیر است و می‌تواند با هر نقشه برداری پایداری که شما نیاز دارید سازگار باشد.

 

 


JPA چه کاربردی در زبان جاوا دارد؟
Java Persistence API (JPA) یکی از روشهای ممکن برای ORM است. از طریق JPA توسعه دهنده می‌تواند نقشه ها، ذخیره، به روز رسانی و بازیابی اطلاعات را از پایگاه داده های رابطه ای به اشیا جاوا و بالعکس انجام دهد. JPA می‌تواند در برنامه های Java-EE و Java-SE استفاده شود. JPA یک مشخصات است و چندین پیاده سازی در دسترس است.

 

 

 

جایگاه JPA در برنامه های کاربردی

دسترسی به پایگاه داده JPA

 

 

 

نتیجه
هر برنامه ای که با یک پایگاه داده سروکار دارد باید یک لایه برنامه را تعریف کند که تنها هدف آن جدا کردن کد ماندگاری است. Java Persistence API طیف وسیعی از قابلیت ها و پشتیبانی از ماندگاری شی جاوا را معرفی می‌کند. برنامه های ساده ممکن است به تمام قابلیت های JPA نیازی نداشته باشند، و در بعضی موارد سربار پیکربندی چارچوب شایسته نیست. با رشد یک برنامه کاربردی، ساختار و کپسول سازی JPA واقعاً باعث نگهداری آنها می‌شود. استفاده از JPA کد شی object شما را ساده نگه می‌دارد و یک چارچوب معمول برای دسترسی به داده ها در برنامه های جاوا را فراهم می‌کند.

نظرات کاربران
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

بستن
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

0 نظر
هدر سایت
بلک فرایدی آکادمی جاواپرو،50% تخفیف روی تمامی دوره های جاوا تا 10 آذر 1403
مشاهده سرفصل ها و ثبت نام در دوره Spring Boot جاواپرو  [کلیک کنید]
آموزش پروژه محور اسپرینگ بوت(Spring Boot)-سیستم دانشگاه
ثبت نام در دوره آموزش Spring security
دوره معماری میکروسرویس ها (Microservices) با استفاده از Spring Boot و Spring Cloud
دوره پرتاب | آموزش پیش نیازهای برنامه نویسی
دوره آموزش مبانی زبان برنامه نویسی جاوا
دوره آموزش مفاهیم پیشرفته زبان برنامه نویسی جاوا
مقدمه ای از زبان برنامه نویسی جاوا(java)
آموزش زبان برنامه نویسی جاوا
آموزش گرافیک در زبان برنامه نویسی جاوا
آموزش مدیریت چیدمان گرافیکی در زبان جاوا
آموزش ساخت بازی دوبعدی در زبان جاوا
Collection ها در زبان برنامه نویسی جاوا
آموزش پروژه محور ساخت برنامه مدیریت بانک با JavaFX
نمونه پروژه های رایگان زبان جاوا
آموزش دیتابیس در زبان برنامه نویسی جاوا
نمونه مثال پایه ای زبان برنامه نویسی جاوا
نمونه مثال String در زبان برنامه نویسی جاوا
آموزش جامع برنامه نویسی JavaFX
آموزش ساخت برنامه آزمون تستی در JavaFX
آموزش برنامه نویسی سوکت در جاوا
آموزش ساخت برنامه دفترچه تلفن با JavaFX
آموزش ساخت ربات ساده تلگرام با زبان جاوا
آموزش ساخت برنامه ماشین حساب با JavaFX
آموزش ساخت برنامه ساده مدیریت ایمیل ها با JavaFX
دوره آموزش Spring Boot
سفارش انجام پروژه زبان برنامه نویسی جاوا(JAVA)
سفارش انجام پروژه برنامه نویسی متلب(MATLAB) با قیمت منصفانه و تحویل به موقع
سفارش انجام پروژه زبان برنامه نویسی سی شارپ (#C)
سفارش انجام پروژه زبان برنامه نویسی سی(C)
سفارش انجام پروژه زبان برنامه نویسی پایتون(Python)
سفارش انجام پروژه زبان برنامه نویسی PHP (پی اچ پی)
سفارش انجام پروژه زبان برنامه نویسی اسمبلی(Assembly)
سفارش انجام پروژه زبان برنامه نویسی جاوا اسکریپت (Javascript)
سفارش انجام پروژه هوش مصنوعی
سفارش انجام پروژه طراحی الگوریتم
سفارش انجام پروژه ساختمان داده ها
سفارش انجام پروژه مهندسی نرم افزار
سفارش انجام پروژه شبکه های کامپیوتری
سفارش انجام پروژه پایگاه داده: دیتابیس (database)
 سفارش انجام پروژه سیستم عامل
سفارش انجام پروژه پاورپوینت(PowerPoint)
سفارش انجام پروژه اکسل (Excel)
سفارش انجام تحقیق و تهیه مقاله
سوالات متداول برنامه نویسی
جدیدترین مطالب
گفتگو را شروع کنید
مشاوره ،تدریس خصوصی و سفارش انجام انواع پروژه های برنامه نویسی