Хибернална сесия - Методи и предимства на хибернационната сесия

Съдържание:

Anonim

Въведение в зимната сесия

Има много обектно-ориентирани езици за програмиране, които имат свои синтаксиси и библиотеки, докато от друга страна, всички данни, които съхраняваме в задния ред, се основават на релационния модел, имащ напълно различни протоколи и синтаксиси, които трябва да се следват. Hibernate е една от платформите за междинен софтуер за преодоляване на тази пропаст. Това приложение за междинен софтуер нарекох Object Relational Mapping (ORM). Разполагаме с различни ORM инструменти като Hibernate, IBatis, Toplink и много други. В тази статия ще се съсредоточим върху хибернацията и нейните сесии.

Какво е хибернация?

Това е инструментът ORM, използван за свързване и картографиране на обектите в приложния слой към базата данни за езика за програмиране на JAVA. Той е създаден да се справи с несъответствието на импеданса между типичен език за програмиране и релационна база данни. Той е безплатен софтуер с лиценз за GNU, може лесно да бъде изтеглен от интернет.

Hibernate е продължение на API за постоянство на JAVA. Той поддържа езика на хибернативния въпрос (HQL). Основната роля на Hibernate е да свързва JAVA обектите и класовете с класовете на базата данни чрез XML структура или JAVA пояснения. По същия начин, типовете данни на JAVA трябва да се съпоставят с типовете данни на базата данни, така че да има несъвместима комуникация между две различни системи. Хибернацията може да се използва за извличане на данни с помощта на заявки. Той може да генерира SQL обаждания и по този начин смекчава ръчните грешки и работата на програмиста. Има различни вградени функции в хибернация за лесна употреба като:

load (), update (), get (), merge (): Ако сме сигурни, че съществува обект, използваме тази функция, за да заредим хибернативния обект, в противен случай използваме get () функция. Функциите за актуализиране и обединяване се използват за актуализиране на записите на базата данни въз основа на съществуващите вече сесии или ние сме напълно нови сесии за транзакцията. Има още много функции като тази за поддържане на зимен сън.

Какво представлява зимната сесия?

Това е интерфейс за изпълнение между приложение и Hibernates, който се създава при поискване. С други думи, той осигурява връзката между вашето приложение и база данни. Той предлага различни функции като създаване, изтриване, получаване, актуализация за работа с базата данни чрез използване на методи на сесия, които съществуват в четири състояния, а именно: Преходни, постоянни и отделени, премахнати.

Хибернацията е създадена, за да служи на тази цел. Той гладко свързва базата данни с езика на Java, независимо от която и да е база данни. Той предлага гъвкави функции и по този начин насърчава гъвкавостта на работа с данни през различни платформи.

Методи на хибернационна сесия

  1. Save (): методът Save () генерира първичния ключ и вмъква записа в базата данни. Той е подобен на метода persist () в JPA, но се държи различно в отделен екземпляр, като създава дублиращия запис при ангажиране с база данни.
  2. Update (): Update () се използва за актуализиране на съществуващия запис в базата данни. Той връща изключение, ако записът не е намерен или извикан в преходна инстанция.
  3. saveOrUpdate (): Запазва или актуализира базата данни въз основа на предаваната единица. Той не връща изключение в преходно състояние, но прави държавата устойчиво по време на работа с база данни.
  4. merge (): Стойностите от отделен обект се актуализират в базата данни, когато merge () се използва чрез промяна на отделената единица в устойчиво състояние.
  5. delete (): методът Delete работи в постоянен режим, за да премахне субекта от базата данни. Изключение се връща, ако в базата данни не се намери запис.

Как да създадете хибернална сесия?

За да създадем хибернална сесия, трябва да заредим хибернативните зависимости в библиотеката на инструмента, който използвате заедно с конектора за база данни. След като тези библиотеки се заредят, можем да установим връзката, като създадем сесия, използвайки сесията фабрика.

Да предположим, че имаме таблица с две колони: Id на служителя и Име на служителя, която трябва да бъде актуализирана.

Кодов фрагмент:

import.org.hibernate.session // По този начин ние приемаме импортирането на хибернатен клас в основната програма.
публичен клас testclasshibernate // декларация за клас.
(
public static void main (string () args) // Основното изпълнение на програмата започва от тук.
(
testprogram = нова програма (); // Тук класът е обективиран и след това този обект се използва като еталон за изпращане на стойности като име на служител и идентификационен номер на служителя, които трябва да бъдат импортирани в таблицата на базата данни.
program.setEmpId (101);
program.setEmpName ( "User1");
Конфигурация con = new Config (). Configure (). AddAnnotedClass testclasshibernate;
// Създаване на фабрика за сесии с помощта на конфигурация
SessionFactory sf1 = con.buildsessionfactory ();
// Методът на отворена сесия дава обект на сесия.
Сесия s1 = sf.OpenSession ();
// Отваряне на транзакция
Транзакция t1 = session.beginTransaction ();
session.save (testprogram);
tx.commit ();
)
)

Предимства на зимната сесия

  • Хибернационната сесия отговаря на ACID (Atomicity, Consistency, Isolation и Durability) свойствата на базата данни.
  • Обектното му картографиране е последователно и по този начин намалява много потенциални грешки и вратички от кода.
  • Той е независим от база данни, така че дори и да има база данни като mySQL или oracle, този софтуер може да се използва.
  • Не е необходимо да знаете SQL, само основните знания за него трябва да ви помогнат да разберете как работи.
  • Лесно създаване на асоциации и много насоки, присъстващи в мрежата. Java, използвана широко с асоцииране към база данни по мрежата, може c = да се възползва максимално от този софтуер, ако се използва разумно.
  • Минимални промени в кода, когато има промени в таблиците, тъй като всичко се обработва чрез клас и обекти. Повечето от кода и функционалностите са общи, което го прави по-достоен за използване в приложения, които имат голяма зависимост от транзакционните данни.
  • Hibernate поддържа многостепенно кеширане, като по този начин подобрява ефективността на кодирането.

заключение

Има историческо разминаване на данните от базата данни и данните, обработвани чрез всеки език за програмиране извън базата данни. За да се реши това, беше създадено ново решение, наречено „ORM“. Данните, които сега се съхраняват в таблична форма в база данни, вече могат да бъдат извлечени от базата данни и могат да бъдат обработвани под формата на обекти в езика за програмиране, а оттам и елиминиране на използването на SQL заявки.

Препоръчителни статии

Това е ръководство за хибернация. Тук обсъждаме какво е хибернация и хибернация сесия? заедно с методите и предимствата. Можете също да разгледате следните статии, за да научите повече -

  1. Хибернация срещу JPA
  2. Какво е CSRF?
  3. Spring vs Spring Boot
  4. Хибернация срещу JDBC