Mis on talveune?

Ametlikult tuntud kui hibernate ORM, see on Java-programmeerimiskeele objektide-suhete kaardistamise tööriist või raamistik. See on GNU vähem üldise avaliku litsentsi 2.1 alla kuuluv tasuta tarkvara. Selle eesmärk on pakkuda kasutajale raamistikku objekti-relatsioonilise impedantsi kaardistamiseks. Samuti haldab see püsivat juurdepääsu andmebaasidele väga kõrgetasemeliste objektide käsitlemise funktsioonidega. See on java vahetarkvara raamistik, mida kasutatakse objektide-suhete kaardistamiseks ja objektide tõhusa püsivuse saavutamiseks.

Arhitektuur

Talvitumise kohta lisateabe saamiseks peame mõistma selle arhitektuuri, mis koosneb järgmistest osadest:

  • Java-rakenduse kood koosneb kõigist klassidest, muutujatest ja objektidest, mis määratlevad rakenduse äriloogika. Need klassid suhtlevad talveunest.
  • Seejärel tuleb hibernaat ja selle põhiprintsiibid, mille abil saaksime andmebaasiserverikihiga suheldes oma ärikihi klasside objekte säilitada (salvestada või salvestada ja taastada).
  • Ta kasutab andmebaasiga suhtlemiseks Java tuuma API-t, Java andmebaasi ühenduvust (JDBC), Java transaction API (JTA), Java nimetamist ja kataloogiliidest (JNDI), et säilitada objekti olek, luues, luues ja värskendades, kustuta (CRUD) toimingud.

Põhimõtteliselt kasutatakse seda andmebaasiga suhtlemiseks. Siin loome lihtsalt mõned üksused, mis pole midagi muud kui java-klass, mis loob meile andmebaasis andmebaasi tabeli.

Raamistik

Siin puutume kokku küsimusega, miks me kasutame java talvitunud raamistikku, kui meil on juba olemas java põhiprintsiibid. Nii et siin on vastus sellele:

  • Kasutatud parimad JDBC mõisted, näiteks:
  1. Rowset asemel ResultSet
  2. DataSource (ühenduse ühendamine) DriverManageri asemel
  3. Üksikute toimingute asemel partiitoimingud
  4. Valmistatud avaldus avalduse asemel
  • Projekti arenduskulusid vähendatakse suureks teguriks.
  • Mälu ei leki
  • Selliste ühenduste haldamine, nagu üks mitmele jne, on lihtne ja hõlbus võrreldes selliste kogumisomadustega nagu java.util.Set, List, Map.
  • Olles ORM-i raamistik, saavad hibernaadid kõik oma eelised:
  • Toetab teise taseme vahemälu
  • Objektist saab rekord ja vastupidi.
  • Lisaks toetab objekti päringute keelt (HQL)
  • Toetab mitut primaarvõtme generaatorit

Hibernate omadused

Nii oli see kõik java hibernate raamistiku ja selle arhitektuuri osas, räägime uusima talvitunud talli funktsioonidest, mis ilmus 57 päeva tagasi, so 23. veebruaril 2019. Red Hat tarkvara välja töötatud virtuaalse masina platvormil on palju funktsioone:

  • See toetab JMX ja JCA.
  • See pakub funktsiooni J2EE integreerimisel.
  • Süsteemi initsialiseerimise ajal genereerib see SQL.
  • Valikuliselt saate pakkuda sisemise ühenduse kogumist ja ettevalmistatud avalduse vahemälu.
  • See toetab versioonimise optimistlikku lukustamist.
  • See pakub välimise liidese toomist.
  • See tutvustab Lazy initsialiseerimist.
  • See pakub seansitaseme vahemälu ja valikulist teise taseme vahemälu.
  • See pakub kahekihilist vahemäluarhitektuuri.
  • Primaarvõtme automaatne genereerimine.
  • See toetab komposiitvõtmete karmi kontseptsiooni.
  • See toetab üksikeha kontseptsiooni.
  • See tutvustab automaatse määrdumise kontrollimise kontseptsiooni.
  • See tagab läbipaistva püsivuse ilma baidikoodide töötlemiseta.
  • See pakub objektide / relatsioonide kaardistamist. Siin on erinevad O / R kaardistamise strateegiad mitme objektina üherealiseks kaardistamiseks,
  • Polümorfsed assotsiatsioonid, kahesuunalised seosed, assotsiatsioonide filtreerimine. Samuti pakub see XML-kaardistamise dokumente.
  • See pakub erinevaid objektorienteeritud päringkeeli.
  • Minimaalne objektorienteeritud hibernate päringute keel (HQL), looduslikud SQL päringud
  • Kõrge objektorienteeritud kriteeriumide kontseptsioon.

Miks me hibernaati kasutame?

Siin olid kõik uusimad talveune funktsioonid. Järgmisena tuleb välja küsimus, miks me seda kasutame, seega on siin toodud põhjused, miks eelistame talvituma:

  • Tehingute haldamine
  • Ühingud
  • Pärimine
  • Hibernate vahemälu
  • Versioonimine
  • Auditi funktsionaalsus
  • JPA annotatsiooni tugi
  • Ühenduse ühendamine
  • Vältige proovipüügiplokke
  • Vältige laiska laadimist
  • Vähendab korduskoodi

Eelised

Lühidalt kõike talvitunud kohta, nüüd on aeg arutada peamist tegevuskava, milleks on hibernaadi kasutamise plussid ja miinused. Teema käsitlemisel alustame talvitumise eelistest, mis on järgmised:

  1. ORM - hooldus on lihtne ja kulutõhus.
  2. Läbipaistev püsivus
  3. Andmebaas on sõltumatu
  4. HQL - HQL täiustatud funktsioone, nagu näiteks leheküljendamine ja dünaamiline profileerimine, SQL-is ei esine. Nii et saame seda kasutada talveunerežiimis.
  5. Kahekihiline vahemälu
  6. Versiooni omadus
  7. Avatud lähtekoodiga ja tasuta tarkvara
  8. Skaalautuvus on lihtne
  9. Laiska laadimine - laiska laadimise kontseptsioon tõmbab ainult vajaliku objekti, mida on vaja rakenduse täitmiseks.
  10. Lihtne õppida
  11. Toetab ka selliseid kollektsioone nagu Loend, Määra, Kaart.
  12. primaarvõtmete genereerimise võime
  13. Hibernate pakkus murrete klasse
  14. See toetab suhteid nagu üks-ühele, üks-ühele, paljudest-paljudele-paljudele, palju-ühele

Puudused

Plussidega on talvitumisel ka väga vähem puudusi. Nii et siin on talvitumise puudused:

  1. natuke aeglasem kui puhas JDBC
  2. katlamaja koodi väljaandmine
  3. genereerib käitusaja jooksul palju SQL-avaldusi
  4. Hibernate ei sobi partii töötlemiseks
  5. Hibernate on aeglane, kuna see kasutab tööaja peegeldust
  6. Palju õpitavat API-d
  7. Mõnikord muutub silumine ja jõudluse häälestamine keeruliseks.
  8. Ei sobi väikeste projektide jaoks
  9. Ei luba mitut sisestamist
  10. Genereerib keerukaid, paljude liitumistega tiine
  11. HQL päringud ei saa helistada PL / SQL programmile

Järeldus

Nii et kõigi nende käsitletud teemade puhul peame teadma ka talvitumise tulevikku. Võib öelda, et Hibernate on palju kauem endiselt domineeriv ORM-i tööriist, arvestades, et ühisassamblee jõuab kiiresti järele. Minu mulje on, et Hibernate on JPA kõige laialdasemalt kasutatav teostus (enne OpenJPA ja EclipseLinki) ning ka see, et see on omakeelne või tuum-API on endiselt võimsam kui JPA 2. Ainult nendel põhjustel arvan, et see kestab kaua aeg. On väga eelistatav kasutada kevadist MVC-d talvitumisel, kuna see sobib kõige paremini MVC-ga. Püsivuse raamistiku kasutamine nagu hibernate võimaldab arendajatel keskenduda täpse ja hea püsivuskihi kirjutamise asemel äriloogikakoodi kirjutamisele, mis hõlmab SQL-päringute, JDBC-koodi, ühendusehalduse jms kirjutamist. Seega võin soovitada Java-raamistikuna kasutada hibernate see on kõige silmatorkavam java raamistik, mida tänapäeval kasutatakse.

Soovitatavad artiklid

See on olnud teemaks Mis on talveune. Siin käsitleme talvitumise arhitektuuri, funktsioone, raamistikku, eeliseid ja puudusi. Võite lisateabe saamiseks vaadata ka järgmisi artikleid -

  1. Talveune intervjuu küsimused
  2. Mis on NumPy?
  3. Mis on avatud ostukorv?
  4. Struts 2 intervjuu küsimust
  5. Java nimetamise konventsioonid

Kategooria: