Introductie in Hibernate Mapping

Er zijn verschillende relaties die we onderhouden om een ​​verband te leggen tussen verschillende databasetabellen in relationele databasemodellen. Deze relaties zijn één op één, één op veel en veel op veel. Een soortgelijk concept wordt geïnstalleerd in de slaapstand. Hier werkt de slaapstand om de JAVA-taal te koppelen aan de databasetabel. Met deze koppeling kunnen we relaties / toewijzingen tot stand brengen. Deze toewijzingen kunnen worden gebruikt om door de database te navigeren. Deze toewijzing is gedefinieerd in het XML-blad. Dit wordt meestal geschreven door codeerders, maar verschillende tools kunnen ook worden gebruikt om het te maken. Sommige van deze tools zijn XDoclet, AndroMDA en Middlegen.

Primaire soorten slaapstandtoewijzing

Er zijn voornamelijk drie soorten kaarten. Dit zijn:

  1. Eén op één: in dit soort relaties wordt één kenmerk op een zodanige manier aan een ander kenmerk toegewezen dat slechts één op één toewijzing wordt behouden. Dit kan beter worden begrepen met behulp van een voorbeeld. Als bijvoorbeeld één persoon voor slechts één afdeling werkt. Dezelfde persoon kan niet door een andere afdeling worden tewerkgesteld, dan wordt die mapping één op één genoemd.
  2. Eén op veel: in dit soort relatie wordt een kenmerk op een zodanige manier aan een ander kenmerk toegewezen dat een kenmerk aan veel andere kenmerken wordt toegewezen. Dit kan beter worden begrepen met behulp van een voorbeeld. bijvoorbeeld: als een student lid is van verschillende groepen. Net als een culturele groep, sportclub, robotica-club tegelijkertijd. In dat geval wordt de student- en groepsrelatie een-op-een-relatie genoemd.
  3. Veel tot veel: in dit soort relaties wordt een kenmerk op een zodanige manier aan een ander kenmerk toegewezen dat een willekeurig aantal kenmerken kan worden gekoppeld aan andere kenmerken zonder beperking van het aantal. Dit kan beter worden begrepen met behulp van een voorbeeld. In de bibliotheek kan bijvoorbeeld één persoon meerdere boeken meenemen en kan ook één boek aan meerdere boeken worden uitgegeven. Dit soort relatie wordt veel tot veel relaties genoemd. Dit is een complexe relatie en vergt veel begrip van de business use case vóór implementatie.

Hibernate Mapping Gedetailleerde uitleg

Als we de code doornemen, begrijpen we dat er een tabel EMP_ATTR is die in de database is gemaakt om attributen van werknemers op te slaan met kolommen zoals voornaam, achternaam en salaris. De gegevens van de Java-toepassing worden opgeslagen in deze tabel die aan de voorkant is ontwikkeld.

Technische specificatie op basis van de geschreven code om uit te leggen:

is een rootnode die elementen bevat. Klasse wordt gebruikt om Java aan de database te koppelen via twee attributen. Klasse naam "emp" is de klasse naam ontleend aan Java-code, terwijl de tabel "EMP_ATTR" de tabelnaam uit de database is. elementhulp bij het toewijzen van de primaire sleutel aan unieke ID's.

De primaire sleutel is aanwezig in de database, terwijl unieke ID's zijn afgeleid van een Java-klasse. naam komt uit Java, terwijl de kolom de kolom is uit een tabel in de database. type attribuut hebben de hibernate-toewijzingsstijl die het datatype van Java converteert naar het datatype sql. klasse wordt gebruikt om de primaire sleutel automatisch te genereren. Het generatorelement is "native".

Dit geeft een indicatie aan de slaapstand dat het elk ontworpen algoritme zoals Hilo, identiteit of reeksalgoritme kan kiezen om een ​​primaire sleutel te maken. Eindelijk een les. Dit is de bepalende klasse die de eigenschap Java-klasse toewijst aan de kolom in de tabel van de database. Het kenmerk name verwijst naar de naam van de Java-klasse, terwijl de kolom de kolom uit een tabel in de database is. Het kenmerk type heeft het slaapstandtype dat het systeem helpt het gegevenstype te bepalen wanneer gegevens uit de Java-klasse worden geconverteerd naar het gegevenstype RDBMS (Relational Database Management System).

Opmerking: dit is een code om de slaapstand uit te leggen. Het is niet de daadwerkelijke implementatie van code.

Code:

Zo ziet het XML-bestand eruit. Het is afkomstig van hibernate.org, de officiële website van Hibernate.


"-//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">




Dit bestand wordt opgeslagen in de indeling .hbm.xml. In dit geval moet het bestand zijn opgeslagen onder de naam EMP_ATR.hbm.xml.

Type sluimerstand

Dus in het vorige codevoorbeeld zien we de hibernate-toewijzingstypen in het XML-bestand. Deze toewijzingstypen kunnen van veel typen zijn:

  1. Primitief: dit type toewijzing heeft gegevenstypen die zijn gedefinieerd als "geheel getal", "teken", "zwevend", "tekenreeks", "dubbel", "Boolean", "kort", "lang" enz. Deze zijn aanwezig in de slaapstand om het Java-gegevenstype toe te wijzen aan het RDBMS-gegevenstype.
  2. Datum en tijd: dit zijn “datum”, “tijd”, “kalender”, “tijdstempel” enz. Net als primitief hebben we deze datum- en tijddatatypetoewijzingen.
  3. Binaire en grote objecten: deze typen zijn "clob", "blob", "binary", "text" enz., Clob en blob-gegevenstypen zijn aanwezig om het gegevenstype in kaart te brengen van grote objecten zoals afbeeldingen en video's.
  4. JDK gekoppeld: sommige van de toewijzingen voor objecten die buiten het bereik van het vorige type toewijzingen liggen, zijn opgenomen in deze categorie. Dit zijn "klasse", "landinstelling", "valuta", "tijdzone".

Conclusie

Hibernate mapping is daarom een ​​concept dat kan worden gerealiseerd door de toewijzingen tot stand te brengen met behulp van XML-bestanden. Deze toewijzingen worden de basis van een database die is ontworpen volgens de vereisten van het bedrijfsmodel. Dit helpt bij het bepalen van de relaties tussen de persistente objecten in de database. Deze toewijzing is van cruciaal belang voor het databaseontwerp, omdat het de basis wordt voor de front-endtoepassing wat betreft prestaties, nauwkeurigheid en snelheid.

Aanbevolen artikelen

Dit is een gids voor Hibernate Mapping. Hier bespreken we hibernate mapping met een gedetailleerde uitleg, types en de primaire types van hibernate mapping samen met de voorbeeldcode. U kunt ook het volgende artikel bekijken voor meer informatie -

  1. Wat is Hibernate?
  2. Hibernate Framework
  3. Wat is Java Hibernate?
  4. Vragen tijdens solliciteren bij Hibernate