Johdanto hibernaattikartoitukseen

On olemassa erilaisia ​​suhteita, joita ylläpidämme linkin luomiseksi eri tietokantataulukoiden välillä relaatiotietokantamallien välillä. Nämä suhteet ovat yksi yhdelle, yksi monille ja monet monille. Samanlainen konsepti on asennettuna lepotilaan. Tässä lepotilassa linkitetään JAVA-kieli tietokantataulukkoon. Tämän linkin avulla voimme luoda suhteita / kuvauksia. Näitä kartoituksia voidaan käyttää selaamaan tietokantaa. Tämä kartoitus määritellään XML-taulukossa. Tämän kirjoittavat yleensä kooderit, mutta sen luomiseen voidaan käyttää myös erilaisia ​​työkaluja. Jotkut näistä työkaluista ovat XDoclet, AndroMDA ja Middlegen.

Hibernaattikartoituksen ensisijaiset tyypit

Kartoitusta on pääasiassa kolme tyyppiä. Nämä ovat:

  1. Yksi: Tällaisessa suhteessa yksi attribuutti kartoitetaan toiseen attribuuttiin siten, että vain yksi-yhteen -kuvaus ylläpidetään. Tämä voidaan ymmärtää paremmin esimerkin avulla. Esimerkiksi, jos yksi henkilö työskentelee vain yhdessä osastossa. Samaa henkilöä ei voi käyttää toisessa osastossa, jolloin tätä kartoitusta kutsutaan yksi yhteen.
  2. Yksi monille: Tällaisessa suhteessa yksi attribuutti kartoitetaan toiseen attribuuttiin siten, että yksi attribuutti yhdistetään moniin muihin ominaisuuksiin. Tämä voidaan ymmärtää paremmin esimerkin avulla. ex: Jos yksi opiskelija on eri ryhmien jäsen. Kuten kulttuuriryhmä, urheilukerho, robottikerho samanaikaisesti. Siinä tapauksessa opiskelija- ja ryhmäsuhdetta kutsutaan monista yhdeksi -suhteeksi.
  3. Monia monille: Tällaisessa suhteessa yksi attribuutti yhdistetään toiseen attribuuttiin siten, että mikä tahansa määrän määritteitä voidaan linkittää muihin ominaisuuksiin ilman lukua koskevia rajoituksia. Tämä voidaan ymmärtää paremmin esimerkin avulla. esimerkiksi kirjastossa yksi henkilö voi ottaa useita kirjoja ja myös yhden kirjan voi antaa useille kirjoille. Tällaista suhdetta kutsutaan monista moniin suhteisiin. Tämä on monimutkainen suhde, joka vaatii paljon ymmärrystä yrityskäytöstä ennen käyttöönottoa.

Hibernate-kartoitus Yksityiskohtainen selitys

Jos käymme läpi koodin, ymmärrämme, että tietokantaan luodaan taulukko EMP_ATTR, joka tallentaa työntekijämääritteet, joissa on sarakkeet, kuten etunimi, sukunimi ja palkka. Java-sovelluksen tiedot tallennetaan tähän taulukkoon, joka on kehitetty käyttöliittymään.

Tekninen eritelmä perustuu koodiin, joka selitetään:

on juurisolmu, joka sisältää elementtejä siinä. Luokkaa käytetään linkittämään java tietokantaan kahden määritteen kautta. Luokan nimi ”emp” on luokan nimi, joka on otettu Java-koodista, kun taas taulukko ”EMP_ATTR” on taulukon nimi tietokannasta. elementti-ohje ensisijaisen avaimen kartoittamisessa yksilöiviin tunnuksiin.

Ensisijainen avain on läsnä tietokannassa, kun taas ainutlaatuiset tunnukset on johdettu Java-luokasta. nimi tulee Java: sta, kun taas sarake on tietokannan taulukon sarake. type -attribuutilla on lepotilan kartoitustyyli, joka muuntaa Java-tiedostotyypin sql-datatyyppiksi. luokkaa käytetään ensisijaisen avaimen luomiseen automaattisesti. Generaattorielementti on ”alkuperäinen”.

Tämä antaa merkinnän hibernaatioon, että se voi valita minkä tahansa suunnitellun algoritmin, kuten Hilo, identiteetti- tai sekvenssialgoritmin, ensisijaisen avaimen luomiseksi. Lopuksi luokka. Tämä on määrittelevä luokka, joka kuvaa Java-luokan ominaisuuden tietokannan taulukon sarakkeeseen. Nimiatribuutti viittaa Java-luokan ominaisuuden nimeen, kun sarake on sarake tietokannan taulukosta. Tyyppi-attribuutti pitää yllä hibernaattityypin, joka auttaa järjestelmää määrittämään tietotyypin, kun Java-luokan tiedot muunnetaan RDBMS (relatiivisen tietokannan hallintajärjestelmän) tietotyypiksi.

Huomaa: Tämä on koodi, joka selittää lepotilan kartoituksen. Se ei ole varsinainen koodin toteutus.

Koodi:

Näin näyttää XML-tiedosto. Se on peräisin hibernate.org-sivustosta, joka on Hibernaten virallinen verkkosivusto.


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




Tämä tiedosto tallennetaan muodossa .hbm.xml. Tässä tapauksessa tiedosto olisi pitänyt tallentaa nimellä EMP_ATR.hbm.xml.

Hibernaattikartoitustyyppi

Joten edellisessä koodiesimerkissä näemme hibernaattikartoitustyypit XML-tiedostossa. Nämä kartoitustyypit voivat olla monentyyppisiä:

  1. Primitiivinen: Tämän tyyppisissä kartoituksissa on tietotyypit, jotka on määritelty seuraavasti: ”kokonaisluku”, “merkki”, “kelluva”, “merkkijono”, “kaksinkertainen”, “looginen”, “lyhyt”, “pitkä” jne. Nämä ovat läsnä lepotilassa. Java-tietotyypin kartoittamiseksi RDBMS-tietotyypiksi.
  2. Päivämäärä ja aika: Nämä ovat “päiväys”, “aika”, “kalenteri”, “aikaleima” jne. Kuten primitiivisiä, meillä on nämä päivämäärä- ja aikadatatyyppikartoitukset.
  3. Binaariset ja suuret objektit: Nämä tyypit ovat “clob”, “blob”, “binary”, “text” jne. Clob- ja blob-tietotyypit ovat läsnä pitämään suurten kohteiden, kuten kuvan ja videoiden, tietotyyppikartoitusta.
  4. JDK linkitetty: Jotkut kohteiden kuvauksista, jotka eivät ole aikaisemman tyyppisten kartoitusten ulottuvilla, kuuluvat tähän luokkaan. Ne ovat “luokka”, “sijainti”, “valuutta”, “aikavyöhyke”.

johtopäätös

Siksi lepotilan kartoitus on käsite, joka voidaan toteuttaa perustamalla kuvaukset XML-tiedostoilla. Näistä kartoituksista tulee tietokannan perusta, joka on suunniteltu liiketoimintamallin vaatimusten mukaisesti. Tämä auttaa määrittelemään tietokannassa olevien pysyvien objektien välisiä suhteita. Tämä kartoitus on kriittinen tietokannan suunnittelulle, koska siitä tulee käyttöliittymäsovelluksen perusta suorituskyvyn, tarkkuuden ja nopeuden suhteen.

Suositellut artikkelit

Tämä on opas Hibernate Mapping -sovellukseen. Tässä keskustellaan hibernaattikartoituksesta yksityiskohtaisella selityksellä, tyypeistä ja hibernaattikartoituksen ensisijaisista tyypeistä yhdessä näytekoodin kanssa. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. Mikä on Hibernate?
  2. Hibernate-kehys
  3. Mikä on Java Hibernate?
  4. Hibernate-haastattelukysymykset