Vad är viloläge?

Officiellt känd som Hibernate ORM, är det ett objektrelationellt mappverktyg eller ramverk för Java-programmeringsspråket. Det är den kostnadsfria programvaran under GNU Lesser General Public License 2.1. Det syftar till att ge användaren ramverket för att hantera objekt-relationell impedanskartläggning. Den hanterar också ihållande databasåtkomstar med mycket höga objekthanteringsfunktioner. Det är ett mellanprogram för java som används för mapprelationell mappning och för att utföra effektiv objekthållbarhet.

Arkitektur

För att lära dig mer om viloläge måste vi förstå dess arkitektur som består av:

  • En Java-applikationskod består av alla klasser, variabler och objekt som definierar applikationens affärslogik. Dessa klasser kommunicerar med viloläge.
  • Sedan kommer Hibernate och dess kärnprinciper, med vilka vi kan fortsätta (lagra eller spara och hämta) föremålen för våra verksamhetslagerklasser genom att kommunicera med databaseserverlagret.
  • Den använder Java core API, Java Database Connectivity (JDBC), Java Transaction API (JTA), Java Naming och Directory Interface (JNDI) för att kommunicera med databasen för att upprätthålla ett objekts tillstånd genom att utföra läsa, skapa, uppdatera, radera (CRUD) operationer.

Det används i princip för att kommunicera med databasen. Här skapar vi bara några enheter, som inte är något annat än en java-klass som skapar en databastabell för oss i databasen.

Ramverk

Här stöter vi på en fråga om varför vi använder viloläge för java om vi redan har de grundläggande java-principerna. Så här är svaret på det:

  • Använda bästa JDBC-koncept som:
  1. Rowset istället för ResultSet
  2. DataSource (anslutningspooling) istället för DriverManager
  3. Batchoperationer istället för individuell drift
  4. PreparedStatement istället för Statement
  • Projektutvecklingskostnaden reduceras till en stor faktor.
  • Inget minne läcker
  • Att hantera föreningar som en-till-många osv är enkla och enkla jämfört med att arbeta med samlingsegenskaper som java.util.Set, List, Map.
  • Som ett ORM-ramverk kommer Hibernate att få alla dess fördelar:
  • Stöder cache på andra nivå
  • Objektet blir en post och vice versa.
  • Stöder dessutom Object Query Language (HQL)
  • Stöder flera primära nyckelgeneratorer

Funktioner i viloläge

Så det handlade om java viloläge och dess arkitektur, låt oss prata om funktionerna i den senaste viloläget som släpptes för 57 dagar sedan, dvs 23 februari 2019. Utvecklad av Red Hat-programvaran, det är en virtuell maskinplattform med många funktioner:

  • Det stöder JMX och JCA.
  • Det ger en funktion i J2EE-integrationen.
  • Vid systeminitialisering genererar det SQL.
  • Tillhandahåll eventuellt intern anslutningssamling och förberedd caching för uttalanden.
  • Det stöder optimistisk låsning med versionering.
  • Det ger yttre foghämtning.
  • Det introducerar Lazy initialisering.
  • Det tillhandahåller cache på sessionen nivå och valfri cache på andra nivån.
  • Det ger dubbelskiktscachearkitektur.
  • Automatisk generering av primärnyckeln.
  • Det stöder det tuffa konceptet av sammansatta tangenter.
  • Det stöder Detached object-konceptet.
  • Det introducerar automatisk Dirty Checking-koncept.
  • Det ger transparent uthållighet utan bearbetning av byte-kod.
  • Det ger objekt- / relationskartläggningar. Här är olika O / R-mappningsstrategier som flera objekt till kartläggning med en rad,
  • Polymorfiska föreningar, dubbelriktad förening, föreningsfiltrering. Det ger också XML-mappningsdokument.
  • Det ger olika objektorienterade frågespråk.
  • Minimalt objektorienterat Hibernate query language (HQL), ursprungliga SQL-frågor
  • Högt objektorienterat kriteriebegrepp.

Varför vi använder Viloläge

Här var det alla de senaste funktionerna i viloläge. Därefter kommer frågan att varför vi använder det, så här är orsakerna till att vi föredrar att använda viloläge:

  • Transaktionshantering
  • föreningar
  • Arv
  • Viloläge cachar
  • versionshantering
  • Revisionsfunktionalitet
  • JPA-annotationsstöd
  • Anslutning Pooling
  • Undvika trygghetsblock
  • Undvik lat laddning
  • Minskar upprepningskoden

fördelar

Sammanfattning av allt om viloläge, nu är det dags att diskutera huvudagendan som är fördelarna och nackdelarna med att använda viloläge. Täcker ämnet låt oss börja med fördelarna med viloläge som är följande:

  1. ORM - underhåll är enkelt och kostnadseffektivt.
  2. Transparent Persistence
  3. Databasoberoende
  4. HQL - HQL: s avancerade funktioner som pagination och dynamisk profilering finns inte i SQL. Så vi kan använda det i viloläge.
  5. Caching i två lager
  6. Version Egenskap
  7. Open Source och gratis programvara
  8. Skalbarhet är lätt
  9. Lazy-Loading - Det lata laddningskonceptet hämtar bara det nödvändiga objektet som krävs för att köra en applikation.
  10. Lätt att lära
  11. Stöder också samlingar som List, Set, Map.
  12. förmåga att generera primära nycklar
  13. Viloläge tillhandahöll dialektklasser
  14. Det stöder relationer som en-till-många, en-till-en, många-till-många-till-många, många-till-en

nackdelar

Med fördelarna har viloläge också mycket färre nackdelar. Så här är nackdelarna med viloläge:

  1. lite långsammare än ren JDBC
  2. fråga om pannplåtkod
  3. generera många SQL-uttalanden i körtid
  4. Viloläge är inte lämplig för batchbehandling
  5. Viloläge är långsamt eftersom det använder reflektion av körtid
  6. Massor av API att lära sig
  7. Ibland blir felsökning och prestandajustering svårt.
  8. Inte lämplig för små projekt
  9. Tillåter inte flera skär
  10. Genererar komplexa kablar med många sammanfogningar
  11. HQL-frågor kan inte ringa PL / SQL-program

Slutsats

Så med alla dessa ämnen som vi täcker måste vi också veta om framtiden för viloläge. Vi kan säga att viloläge fortfarande kommer att vara det dominerande ORM-verktyget mycket längre med tanke på att JPA snabbt tar upp. Mitt intryck är att Hibernate är den mest använda implementeringen av JPA (före OpenJPA och EclipseLink), och att dess ursprungliga eller kärn-API fortfarande är mer kraftfull än JPA 2. Av dessa skäl tror jag att det kommer att vara på länge tid. Det är mycket att föredra att använda Spring MVC i viloläge eftersom det är mest kompatibelt MVC. Med hjälp av ett persistensram som Hibernate tillåter utvecklare att fokusera på att skriva affärslogikkod istället för att skriva ett noggrant och bra persistenslager som inkluderar att skriva SQL Queries, JDBC-kod, anslutningshantering osv. Så jag kan föreslå att du använder viloläge som java-ramverket som det är det mest framstående java-ramverket som används idag.

Rekommenderade artiklar

Detta har varit en guide till What is Hibernate. Här diskuterar vi Arkitektur, funktioner, ramverk, fördelar och nackdelar med viloläge. Du kan också titta på följande artiklar för att lära dig mer -

  1. Hibernate Interview Questions
  2. Vad är NumPy?
  3. Vad är öppen vagn?
  4. Struts 2 intervjufrågor
  5. Java-namnkonventioner

Kategori: