menusearch
javapro.ir

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

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

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

 

Hibernate ابزاری متناسب با منبع باز نقشه برداری شی(ORM) است که چارچوبی را برای نقشه برداری از مدل های دامنه شی گرا به پایگاه داده های رابطه ای برای برنامه های وب زبان جاوا فراهم می‌کند. Hibernate از انواع سفارشی تعریف شده توسط کاربر پشتیبانی می‌کند. معماری Hibernate در چهار لایه طبقه بندی شده است. این معماری سطح بالای Hibernate با فایل نگاشت و فایل پیکربندی است.

 

 

 

 

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

 

 

 

دوره رایگان آموزش فریمورک سازمانی Spring Boot همراه باآموزش ساخت فروشگاه اینترنتی با جاوا

 

 

Hibernate چیست و چه کاربردی در زبان جاوا دارد؟
برنامه های Hibernate کلاس های پایدار را تعریف می‌کنند که "به جدولهای پایگاه داده" ترسیم می‌شوند. معماری Hibernate شامل بسیاری از اشیا مانند اشیا دائمی، کارخانه جلسه، کارخانه تراکنش، کارخانه اتصال، جلسه، معامله و غیره است. معماری Hibernate در چهار لایه طبقه بندی شده است. یک معماری سطح بالا با فایل نگاشت و فایل پیکربندی است.بسیاری از توسعه دهندگان جاوا از "جهنم فراداده" دوری کرده و برخی پیشنهاد کرده اند که به فراداده XML کد جاوا ساده بازگردید. Hibernate دارای پیش فرض های معقولی است که تایپ کردن را به حداقل می‌رساند و یک تعریف کامل نوع فایل دارد که می‌تواند برای تکمیل خودکار یا اعتبار سنجی استفاده شود.

 

 

 

 

روند انتقال داده ها از کلاس ها به پایگاه داده و بالعکس از طریق Hibernate
روند انتقال داده ها از کلاس ها به پایگاه داده و بالعکس از طریق Hibernate

 

 


درک معماری Hibernate در ساختار برنامه های جاوا


معماری Hibernate در چهار لایه طبقه بندی شده است.


لایه برنامه جاوا، لایه چارچوب Hibernate، لایه api بک هند


لایه پایگاه داده رابط های برنامه نویسی اولین چیزی است که باید در مورد Hibernate یاد بگیرید تا بتوانید از آن در لایه ماندگار برنامه خود استفاده کنید. یک هدف اصلی در طراحی API این است که واسط های بین اجزای نرم افزار را تا حد ممکن باریک نگه داریم. با این حال، در عمل، API های ORM کوچک نیستند.

 

 

 

درک معماری Hibernate در ساختار برنامه های جاوا
                    معماری Hibernate

 

 


حافظه پنهانی سطح اول :

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

 

 

 

حافظه پنهان سطح دوم :

برای ذخیره اشیا در طول جلسه استفاده می‌شود. باید به صراحت فعال شود و یکی از ارائه دهندگان حافظه پنهان برای حافظه پنهان سطح دوم در ساختار برنامه های جاوا لازم است. یکی از ارائه دهندگان پنهان کش سطح دوم، EhCache است.

 

 

 

اشیا ماندگار:

اشیا قدیمی ساده جاوا هستند (POJO)، که به عنوان یکی از ردیف های جدول مربوطه در پایگاه داده توسط Hibernate ادامه می‌یابد. آنها را می‌توان در پرونده های پیکربندی (hibernate.cfg.xml ) یا (hibernate. Properties) پیکربندی کرد یا حاشیه نویسی توسط حاشیه نویسیEntity.

 

 

 

 

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

 

 

 

 

رابط های Hibernate در زبان جاوا به صورت زیر طبقه بندی شود:
رابط هایی که توسط برنامه ها برای انجام CRUD اساسی (ایجاد / خواندن / به روزرسانی / حذف) و پرس و جو فراخوانی می‌شوند، این رابط ها نقطه اصلی وابستگی منطق برنامه / کنترل برنامه به Hibernate است. آنها شامل جلسه، تراکنش و پرس و جو هستند. رابط هایی که با کد زیرساخت برنامه برای پیکربندی Hibernate، از همه مهمتر، کلاس Configuration فراخوانی می‌شوند.رابط های تماس مجدد که به برنامه اجازه می‌دهد در برابر وقایع درون Hibernate مانند Interceptor، Lifecycle و Validatable واکنش نشان دهد.

 

 


رابط هایی که امکان گسترش نقشه برداری قدرتمند Hibernate را فراهم می‌کنند، مانند User Type، Composite User Type و Identifier Generator این رابط ها توسط کد زیرساخت برنامه (در صورت لزوم) پیاده سازی می‌شوند. Hibernate از API های موجود جاوا، از جمله JDBC (اتصال پایگاه داده جاوا)، API تراکنش جاوا (JTA، و نامگذاری جاوا و رابط دایرکتوری JNDI ) استفاده می‌کند. JDBC یک سطح ابتدایی از انتزاع عملکرد مشترک در پایگاه داده های رابطه ای را فراهم می‌کند، اجازه می‌دهد تقریباً هر پایگاه داده ای با یک درایور  JDBCتوسط Hibernate پشتیبانی شود. JNDI و JTA به Hibernate اجازه می‌دهند تا با سرورهای برنامه JEE2 ادغام شود.

 

 

 

آموزش Hibernate  در زبان جاوا
رابط های Hibernate

 

 

 

رابط های اصلی
پنج رابط اصلی تقریباً در هر برنامه Hibernate استفاده می‌شود. با استفاده از این رابط ها می‌توانید اشیا ماندگار برنامه های جاوا را ذخیره و بازیابی کنید و تراکنش ها را کنترل کنید.

 

 

 

رابط جلسه:

رابط Session رابط اصلی است که توسط برنامه های Hibernate زبان جاوا استفاده می‌شود. یک نمونه از Session آسان و ایجاد و از بین بردن آن کم هزینه است.، این گزینه با توجه به هر درخواست اهمیت دارد، زیرا برنامه شما نیاز به ایجاد و از بین بردن جلسات دائمی دارد. جلسات Hibernate ایمنی موضوعی ندارند و باید از طریق طراحی همزمان فقط یک نخ استفاده شود. مفهوم Hibernateیک جلسه چیزی بین اتصال و تبادلات است.

 

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

 

توجه داشته باشید که یک جلسه Hibernate هیچ ارتباطی با وب ردیف HttpSession ندارد. وقتی از کلمه session استفاده می‌کنیم منظورمان جلسه Hibernate است. ما گاهی اوقات از user session برای ارجاع به شی HttpSession استفاده می‌کنیم. جلسه، تعامل بین برنامه و پایگاه داده در هر لحظه از زمان را نشان می‌دهد. جلسه توسط کلاس org.hibernate.Session نشان داده می‌شود. نمونه جلسه را می‌توان از لوبیای Session Factory بازیابی کرد.

 

 


رابط Session Factory :

این برنامه نمونه های Session را از Session Factory به دست می‌آورد. در مقایسه با رابط Session، این شی هیجان کمتری دارد. هر کاربر برنامه کاربردی Session Factory را برای یک شی session جلسه درخواست می‌کند. Session Factory از اطلاعات پیکربندی پرونده ها در برنامه های مبتنی بر زبان جاوا استفاده می‌کند تا شی session جلسه را به طور مناسب نمونه سازی کند.

 


Session Factory مطمئناً آسان نیست! این برنامه برای به اشتراک گذاشتن در بسیاری از موضوعات برنامه است. به طور معمول یک Session Factory واحد برای کل برنامه وجود دارد - به عنوان مثال در هنگام راه اندازی برنامه ایجاد شده است. با این حال، اگر برنامه شما با استفاده از Hibernate به چندین پایگاه داده دسترسی پیدا کند، برای هر پایگاه داده به یک Session Factory نیاز دارید.

 

 

 

رابط پیکربندی :

به طور کلی در فایل های hibernate. Properties یا hibernate.cfg.xml نوشته می‌شود. برای پیکربندی جاوا، می‌توانید کلاس حاوی حاشیه باConfiguration را پیدا کنید. ازSession Factory برای کار با Java Application و database استفاده می‌شود. این امر نمایانگر مجموعه ای از نگاشت های یک برنامه جاوا با یک پایگاه داده SQL است.

 

شی Configuration برای پیکربندی و راه اندازی Hibernate استفاده می‌شود. برنامه با استفاده از یک نمونه پیکربندی محل اسناد نقشه برداری و ویژگی های خاص Hibernate را مشخص می‌کند و سپس Session Factory را ایجاد می‌کند. حتی اگر رابط پیکربندی قسمت نسبتاً کمی از کل برنامه Hibernate را بازی کند، این اولین شی ای است که با شروع استفاده از Hibernate با آن روبرو خواهید شد.

 

 

کلاس خصوصی آموزش Hibernate

لایه تعامل Hibernate API با پایگاه داده

 

 

 

رابط تبادل :

رابط Transaction یک API اختیاری است. برنامه های Hibernate زبان جاوا ممکن است ترجیح دهند از این رابط استفاده نکنند، در عوض تراکنش ها را در کد زیرساخت خود مدیریت کنند.

 

Transaction ،کد برنامه را از اجرای تبادل اساسی انتزاع می‌کند - که ممکن است یک تراکنش JDBC، تبادل کاربر JTA یا حتی یک تراکنش معماری درخواست مشترک شی (CORBA) باشد - به برنامه اجازه می‌دهد تا مرزهای تراکنش را از طریق یک API سازگار کنترل کند. به شما کمک می‌کند تا برنامه های Hibernate بین انواع مختلف محیط های اجرایی قابل حمل باشند. شما را قادر می‌سازد به ثبات داده برسید، و در صورت وقوع اتفاق غیر منتظره، به عقب بازگردید.

 

 

رابط پرس و جو و معیارها :

رابط Query به شما امکان می‌دهد پرس و جو ها را در برابر پایگاه داده انجام دهید و نحوه اجرای پرس و جو را کنترل کنید. داده ها بصورت HQL یا به گویش SQL بومی پایگاه داده شما نوشته می‌شوند. یک نمونه Query برای اتصال پارامترهای query، محدود کردن تعداد نتایج برگشت داده شده توسط query و در نهایت برای اجرای query استفاده می‌شود.

 

رابط کاربری معیارها به شما امکان می‌دهد تا پرس و جوهای معیارهای شی گرا را ایجاد و اجرا کنید. به برنامه های مبتنی بر زبان جاوا اجازه می‌دهد تا پایگاه داده را برای یک یا چند شی ذخیره شده جستجو کنند. Hibernate تکنیک های مختلفی را برای جستجوی پایگاه داده فراهم می‌کند، از جمله Named Query و Criteria API.

 

 

 

انواع
عنصر اساسی و بسیار قدرتمند معماری Hibernate، Type است. یک نوع از Hibernate Type یک نوع جاوا را به یک نوع ستون پایگاه داده ترسیم می‌کند (در واقع، این نوع ممکن است چندین ستون را پوشش دهد). تمام خصوصیات ثابت طبقات پایدار، از جمله انجمن ها، دارای یک نوع Hibernate مربوط به خود هستند. این طراحی باعث می‌شود که Hibernate بسیار انعطاف پذیر و قابل توسعه باشد.
طیف گسترده ای از انواع داخلی وجود دارد، که کل کلاس های جاوا و بسیاری از کلاسهای JDK را شامل می‌شود، از جمله انواع java.util.Currency، java.util.Calendar، بایت [] و java.io.Serializable.

 

 

 

نتیجه
پایگاه های داده رابطه ای و موتورهای جستجو فناوری های منحصر به فردی نیستند. Hibernate Search قدرت جستجوی متن کامل Lucene را به Hibernate ORM از طریق یک API سطح بالا و جهانی و بدون آسیب رساندن به قابلیت حمل در سطح پایگاه داده برنامه، به ارمغان می‌آورد. یکپارچه سازی و شفافیت فرایندهای نمایه سازی Lucene را با عملیات پایگاه داده های Hibernate / JPA مدیریت شده بر روی دامنه اشیا پایدار ادغام می‌کند. هزینه و زمان برنامه نویسی به دلیل نمایه سازی خودکار در Hibernate Search و حاشیه نویسی در Hibernate Search، Hibernate / JPA و چارچوب برنامه جاوا Spring 2.0 بسیار کاهش می‌یابد.

 

 

 

دوره رایگان آموزش فریمورک سازمانی Spring Boot همراه باآموزش ساخت فروشگاه اینترنتی با جاوا

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

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

0 نظر
هدر سایت
دوره برنامه نویسی Spring Core
مشاهده سرفصل ها و ثبت نام در دوره 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)
سفارش انجام تحقیق و تهیه مقاله
سوالات متداول برنامه نویسی
جدیدترین مطالب