Wprowadzenie do mapowania hibernacji

Istnieją różne relacje, które utrzymujemy w celu ustanowienia połączenia między różnymi tabelami baz danych w relacyjnych modelach baz danych. Relacje te są jeden do jednego, jeden do wielu i wiele do wielu. Podobna koncepcja jest instalowana w trybie hibernacji. Tutaj hibernacja działa w celu połączenia języka JAVA z tabelą bazy danych wraz z tym łączem możemy ustanowić relacje / odwzorowania. Tych odwzorowań można użyć do nawigacji w bazie danych. To mapowanie jest zdefiniowane w arkuszu XML. Jest to na ogół napisane przez programistów, ale do jego utworzenia można również użyć różnych narzędzi. Niektóre z tych narzędzi to XDoclet, AndroMDA i Middlegen.

Podstawowe typy mapowania hibernacji

Istnieją przede wszystkim trzy rodzaje mapowania. To są:

  1. Jeden do jednego: w tego rodzaju relacjach jeden atrybut jest mapowany na inny atrybut w taki sposób, że zachowane jest tylko mapowanie jeden do jednego. Można to lepiej zrozumieć na podstawie przykładu. Na przykład jeśli jedna osoba pracuje tylko dla jednego działu. Ta sama osoba nie może być zatrudniona przez inny dział, wówczas mapowanie to nazywa się jeden do jednego.
  2. Jeden do wielu: w tego rodzaju relacjach jeden atrybut jest mapowany na inny atrybut w taki sposób, że jeden atrybut jest mapowany na wiele innych atrybutów. Można to lepiej zrozumieć na podstawie przykładu. na przykład: jeśli jeden uczeń jest członkiem różnych grup. Jak grupa kulturowa, klub sportowy, klub robotyki w tym samym czasie. W takim przypadku relacja uczeń i grupa nazywana jest relacją wiele do jednego.
  3. Wiele do wielu: w tego rodzaju relacjach jeden atrybut jest mapowany na inny atrybut w taki sposób, że dowolna liczba atrybutów może być powiązana z innymi atrybutami bez ograniczenia liczby. Można to lepiej zrozumieć na podstawie przykładu. na przykład w bibliotece jedna osoba może zabrać wiele książek, a jedna książka może być wydana na wiele książek. Ten rodzaj relacji nazywany jest relacjami wiele do wielu. Jest to złożona relacja i wymaga dużo zrozumienia biznesowego przypadku użycia przed wdrożeniem.

Hibernacja Odwzorowanie Szczegółowe wyjaśnienie

Jeśli przejdziemy przez kod, to zrozumiemy, że w bazie danych tworzona jest tabela EMP_ATTR do przechowywania atrybutów pracowników, które mają kolumny takie jak imię, nazwisko i wynagrodzenie. Dane z aplikacji Java są przechowywane w tej tabeli opracowanej w interfejsie użytkownika.

Specyfikacja techniczna oparta na kodzie napisanym w celu wyjaśnienia:

jest węzłem głównym, który zawiera elementy. Klasa służy do połączenia java z bazą danych za pomocą dwóch atrybutów. Nazwa klasy „emp” to nazwa klasy zaczerpnięta z kodu java, podczas gdy tabela „EMP_ATTR” to nazwa tabeli z bazy danych. element pomoc w mapowaniu klucza podstawowego na unikalne identyfikatory.

Klucz podstawowy jest obecny w bazie danych, podczas gdy unikalne identyfikatory pochodzą z klasy Java. nazwa pochodzi od java, podczas gdy kolumna jest kolumną z tabeli w bazie danych. Atrybut typu ma styl hibernacji, który konwertuje typ danych Java na typ danych SQL. Klasa służy do automatycznego generowania klucza podstawowego. Element generatora jest „natywny”.

Daje to sygnał do hibernacji, że może wybrać dowolny zaprojektowany algorytm, taki jak Hilo, algorytm tożsamości lub sekwencji, aby utworzyć klucz podstawowy. Wreszcie klasa. Jest to klasa definiująca, która odwzorowuje właściwość klasy java na kolumnę w tabeli bazy danych. Atrybut name odnosi się do nazwy właściwości klasy Java, gdy kolumna jest kolumną z tabeli w bazie danych. Atrybut typu zawiera typ hibernacji, który pomoże systemowi określić typ danych, gdy dane klasy Java zostaną przekonwertowane na typ danych RDBMS (system zarządzania relacyjnymi bazami danych).

Uwaga: Jest to kod wyjaśnić mapowanie hibernacji. To nie jest rzeczywista implementacja kodu.

Kod:

Tak wygląda plik XML. Jest pozyskiwany z hibernacji.org, która jest oficjalną stroną internetową Hibernacji.


"-//Hibernate/Hibernate Mapping DTD//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">





"-//Hibernate/Hibernate Mapping DTD//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">





"-//Hibernate/Hibernate Mapping DTD//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">




Ten plik jest zapisany w formacie .hbm.xml. W takim przypadku plik powinien zostać zapisany pod nazwą EMP_ATR.hbm.xml.

Hibernacja Typ odwzorowania

Tak więc w poprzednim przykładzie kodu widzimy hibernacyjne typy odwzorowań w pliku XML. Te typy mapowania mogą być wielu typów:

  1. Prymitywne: ten typ mapowania ma typy danych zdefiniowane jako „liczba całkowita”, „znak”, „liczba zmiennoprzecinkowa”, „ciąg”, „podwójny”, „logiczny”, „krótki”, „długi” itd. Są one obecne w hibernacji odwzorować typ danych Java na typ danych RDBMS.
  2. Data i godzina: Są to „data”, „godzina”, „kalendarz”, „znacznik czasu” itp. Podobnie jak prymitywne mamy te mapowania typów danych daty i godziny.
  3. Obiekty binarne i duże: Te typy to „clob”, „blob”, „binarny”, „tekst” itp. Istnieją typy danych Clob i blob w celu utrzymania mapowania typów danych dużych obiektów, takich jak obraz i wideo.
  4. Połączony z JDK: niektóre odwzorowania obiektów, które leżą poza zasięgiem poprzedniego rodzaju odwzorowań, są uwzględnione w tej kategorii. Są to „klasa”, „lokalizacja”, „waluta”, „strefa czasowa”.

Wniosek

W związku z tym mapowanie hibernacji to koncepcja, którą można zrealizować, ustanawiając mapowania przy użyciu plików XML. Te mapowania stają się podstawą bazy danych zaprojektowanej zgodnie z wymaganiami modelu biznesowego. Pomaga to w określeniu relacji między stałymi obiektami w bazie danych. To mapowanie ma kluczowe znaczenie dla projektowania baz danych, ponieważ staje się ono podstawą aplikacji front-end pod względem wydajności, dokładności i szybkości.

Polecane artykuły

Jest to przewodnik po mapowaniu hibernacji. Tutaj omawiamy mapowanie hibernacji ze szczegółowym wyjaśnieniem, typami i podstawowymi typami mapowania hibernacji wraz z przykładowym kodem. Możesz także spojrzeć na następujący artykuł, aby dowiedzieć się więcej -

  1. Co to jest Hibernacja?
  2. Hibernacja Framework
  3. Co to jest Java Hibernacja?
  4. Hibernacja - pytania do wywiadu