Вступ у сплячу сесію
Існує багато об'єктно-орієнтованих мов програмування, які мають власні синтаксиси та бібліотеки, а з іншого боку, всі дані, які ми зберігаємо у вихідному центрі, базуються на реляційній моделі, що має абсолютно різні протоколи та синтаксиси, які слід дотримуватися. Hibernate - одна з платформ середнього програмного забезпечення для подолання цього розриву. Цю програму середнього програмного забезпечення я назвав Object Relational Mapping (ORM). У нас є різні засоби ORM, такі як Hibernate, IBatis, Toplink та багато іншого. У цій статті ми зупинимося на сплячому режимі та його сесіях.
Що таке сплячка?
Це інструмент ORM, який використовується для з'єднання та відображення об'єктів у прикладному шарі до бази даних для мови програмування JAVA. Він створений для обробки невідповідності імпедансу між типовою мовою програмування та реляційною базою даних. Це безкоштовне програмне забезпечення з ліцензією GNU, його можна легко завантажити з Інтернету.
Hibernate - це розширення API стійкості JAVA. Він підтримує мову Hibernate Query (HQL). Основна роль Hibernate полягає у зв'язуванні об'єктів та класів JAVA з класами бази даних за допомогою XML-структури або анотацій JAVA. Аналогічно, типи даних JAVA повинні бути узгоджені з типами даних бази даних, щоб не було комунікацій між двома різними системами. Hibernate може використовуватися для отримання даних за допомогою запитів. Він може генерувати дзвінки SQL і тим самим пом’якшує помилки вручну та роботу розробника. Для зручності використання існують різні вбудовані функції:
load (), update (), get (), merge (): Якщо ми впевнені, що об'єкт існує, ми використовуємо цю функцію для завантаження гібернаційного об’єкта, інакше ми використовуємо функцію get (). Функції оновлення та об’єднання використовуються для оновлення записів бази даних на основі поточних сеансів, які вже існують, або ми є абсолютно новими сесіями для транзакції. Існує ще багато подібних функцій для підтримки сплячого.
Що таке сесія сплячки?
Це інтерфейс виконання між додатком та Hibernates, який створюється на вимогу. Іншими словами, він забезпечує зв’язок між вашим додатком та базою даних. Він пропонує різні функції, такі як створення, видалення, отримання, оновлення для роботи з базою даних, використовуючи методи сеансу, які існують у чотирьох станах, а саме: Тимчасовий, стійкий і відокремлений, видалений.
Снучий режим створив для цього. Він плавно з'єднує базу даних з мовою Java, незалежно від будь-якої бази даних. Він оснащений гнучкими функціями і тим самим сприяє гнучкості обробки даних на різних платформах.
Методи сеансу сплячки
- Save (): метод Save () генерує первинний ключ та вставляє запис у базу даних. Він схожий на метод persist () в JPA, але він поводиться по-різному в окремому екземплярі, створюючи дублікат запису при фіксації бази даних.
- Оновлення (): Update () використовується для оновлення існуючої записи бази даних. Він повертає виняток, якщо запис не знайдено або викликається в перехідному екземплярі.
- saveOrUpdate (): він зберігає або оновлює базу даних на основі переданої сутності. Він не повертає виняток у перехідному стані, але робить стан стійким під час роботи з базою даних.
- merge (): Значення відокремленої сутності оновлюються до бази даних, коли використовується merge () шляхом зміни відокремленої сутності в стійкий стан.
- delete (): метод видалення працює в стійкому режимі, щоб видалити об'єкт із бази даних. Виняток повертається, якщо в базі даних не знайдено жодного запису.
Як створити сплячу сесію?
Для того щоб створити сплячий сеанс, нам доведеться завантажувати сплячі залежності в бібліотеку інструменту, який ви використовуєте, разом із роз'ємом бази даних. Після завантаження цих бібліотек ми зможемо встановити з'єднання, створивши сеанс за допомогою фабрики сеансів.
Припустимо, у нас є таблиця з двома стовпцями: Ідентифікація працівника та Ім'я працівника, яку слід оновити.
Фрагмент коду:
тест-клас для громадських класів // декларація про клас.
(
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 (тестова програма);
tx.commit ();
)
)
Переваги сплячої сесії
- Сеанс сплячого режиму відповідає властивостям ACID (Atomicity, Consistency, Isolation and Durability) бази даних.
- Її об'єктне відображення є послідовним і, таким чином, зменшує масу потенційних помилок та прорізів у коді.
- Це незалежно від бази даних, тому навіть за наявності будь-якої бази даних, наприклад mySQL або oracle, це програмне забезпечення може бути використане.
- Не потрібно знати SQL, лише базові знання про нього повинні допомогти вам зрозуміти, як він працює.
- Легко створювати асоціації та безліч настанов, наявних у мережі. Java, яка широко використовується разом із асоціацією до бази даних по мережі, може c = максимально використовувати це програмне забезпечення, якщо використовувати його з розумом.
- Мінімальний код змінюється при будь-яких змінах таблиць, оскільки все обробляється за допомогою класу та об'єктів. Більшість коду та функціональних можливостей є загальними, що робить його більш гідним для використання в додатках, які мають велику залежність від транзакційних даних.
- Hibernate підтримує багаторівневе кешування, тим самим покращує ефективність кодування.
Висновок
Виявлено історичну невідповідність даних баз даних та даних, якими обробляється будь-яка мова програмування за межами бази даних. Щоб вирішити це, було розроблено нове рішення під назвою "ORM". Дані, які зберігаються у табличній формі в базі даних, тепер можна отримати з бази даних та обробляти їх у вигляді об'єктів на мові програмування, а отже, виключати використання SQL-запитів.
Рекомендовані статті
Це посібник зі сплячої сесії. Тут ми обговорюємо, що таке сплячка та сплячка? поряд із методами та перевагами. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Зимує проти JPA
- Що таке CSRF?
- Весна проти весняного черевика
- Зимує проти JDBC