Tutorial su Hibernate

Di recente ho scritto molti tutorial su Hibernate. Hibernate è uno dei migliori strumenti ORM Java attualmente sul mercato. Quindi questo post è come un indice di tutti i post per i tutorial e gli esempi di Hibernate. Puoi seguire questi tutorial su Hibernate in sequenza per imparare Hibernate da zero. Molto probabilmente aggiungerò altri tutorial su Hibernate all’elenco, quindi potresti volerlo segnare nei segnalibri e controllarlo di tanto in tanto.

Tutorial su Hibernate

  1. Tutorial su Hibernate per Principianti Hibernate supporta le annotazioni JPA ed è molto flessibile. Possiamo configurarlo usando XML, file di proprietà e anche programmaticamente. Questo tutorial è un ottimo modo per iniziare con il framework Hibernate. Questo tutorial si concentra su diverse configurazioni richieste per Hibernate e fornisce esempi di mapping basato su XML semplice e di mapping basato su annotazioni JPA. Imparerai anche diversi modi per inizializzare SessionFactory e componenti importanti del framework Hibernate.
  2. Mapping One-to-One di Hibernate La maggior parte delle volte, le tabelle del database sono associate tra loro. Ci sono molte forme di associazione – uno a uno, uno a molti e molti a molti sono a livello generale, che possono essere ulteriormente divisi in mappature unidirezionali e bidirezionali. Questo tutorial ti guida attraverso l’implementazione della mappatura Uno a Uno di Hibernate utilizzando la configurazione XML e la configurazione delle annotazioni JPA.
  3. Mapping Uno-a-Molti di Hibernate In parole semplici, la mappatura uno a molti significa che una riga in una tabella può essere mappata su più righe in un’altra tabella. Ad esempio, pensa a un sistema di carrelli dove abbiamo un’altra tabella per gli articoli. Un carrello può avere più articoli, quindi qui abbiamo una mappatura uno a molti. In questo tutorial imparerai come implementare la mappatura Uno a Molti utilizzando la configurazione basata su XML e poi utilizzando le annotazioni di Hibernate.
  4. Mapping Molti-a-Molti di Hibernate La mappatura molti a molti è di solito implementata nel database utilizzando una tabella di collegamento, ad esempio possiamo avere la tabella Cart e la tabella Item e la tabella Cart_Items per la mappatura molti a molti. Ogni carrello può avere più articoli e ogni articolo può far parte di più carrelli, quindi abbiamo una mappatura molti a molti qui. Questo tutorial spiega la mappatura unidirezionale e bidirezionale molti a molti di Hibernate.
  5. Linguaggio di Query Hibernate (HQL) Il framework Hibernate è dotato di un potente linguaggio di query orientato agli oggetti – Hibernate Query Language (HQL). È molto simile a SQL tranne per il fatto che utilizziamo gli oggetti al posto dei nomi delle tabelle, il che lo rende più vicino alla programmazione orientata agli oggetti. Questo articolo spiega HQL e le diverse clausole supportate dal linguaggio HQL.
  6. Query SQL Nativa di Hibernate Hibernate fornisce l’opzione per eseguire query SQL native tramite l’uso dell’oggetto SQLQuery. Questo è molto utile quando vogliamo eseguire query specifiche del database non supportate dall’API di Hibernate come suggerimenti per le query o la parola chiave CONNECT in Oracle Database.
  7. Query Nomeata di Hibernate Se ci sono molte query HQL o Native SQL, allora causeranno un disordine nel codice perché tutte le query saranno sparse in tutto il progetto. Ecco perché Hibernate fornisce la Named Query che possiamo definire in una posizione centrale e utilizzarle ovunque nel codice. Possiamo creare query nomeate sia per HQL che per Native SQL. Le Named Query di Hibernate possono essere definite nei file di mapping di Hibernate utilizzando l’elemento query o sql-query o tramite l’uso delle annotazioni JPA @NamedQuery e @NamedNativeQuery.
  8. Hibernate Criteria Hibernate fornisce l’API Criteria che è più orientata agli oggetti per interrogare il database e ottenere risultati. Non possiamo utilizzare Criteria per eseguire query di aggiornamento o eliminazione o qualsiasi dichiarazione DDL. Viene utilizzato solo per recuperare i risultati dal database utilizzando un approccio più orientato agli oggetti. Alcuni degli utilizzi comuni dell’API Criteria sono la Proiezione che possiamo utilizzare per le funzioni aggregate come sum(), min(), max() ecc., ProjectionList per recuperare solo le colonne selezionate, ordinare i risultati ecc.
  9. Cache di primo livello di Hibernate La cache di Hibernate può essere molto utile per ottenere prestazioni dell’applicazione veloci se utilizzata correttamente. L’idea alla base della cache è ridurre il numero di query al database, quindi ridurre il tempo di attraversamento dell’applicazione. La cache di primo livello di Hibernate è associata all’oggetto Session. La cache di primo livello di Hibernate è abilitata per impostazione predefinita e non c’è modo di disabilitarla. Tuttavia, Hibernate fornisce metodi attraverso i quali possiamo eliminare oggetti selezionati dalla cache o svuotare completamente la cache. Qualsiasi oggetto memorizzato nella sessione non sarà visibile ad altre sessioni e quando la sessione viene chiusa, tutti gli oggetti memorizzati nella cache verranno persi.
  10. Hibernate Second Level Cache with EHCache I provider della cache di secondo livello di Hibernate includono EHCache e Infinispan, ma EHCache è più popolare perché è facile da integrare e supporta tutte le strategie di caching di hibernate. Questo tutorial fornisce un esempio completo per integrare EHCache con il framework Hibernate.
  11. Hibernate get vs load Hibernate Session fornisce diversi metodi per recuperare dati dal database. Due di essi sono – get() e load(). Ci sono anche molti metodi sovraccaricati per questi, che possiamo utilizzare in diverse circostanze. A prima vista sia get() che load() sembrano simili perché entrambi recuperano i dati dal database. Tuttavia ci sono alcune differenze tra loro, questo tutorial le spiega con esempi di codice.
  12. Hibernate save vs persist La Session di Hibernate è l’interfaccia tra l’applicazione Java e il framework Hibernate. Questo tutorial spiega i metodi importanti della Session per salvare e aggiornare i dati nelle tabelle – save, saveOrUpdate, persist, update e merge.
  13. Hibernate openSession vs getCurrentSession La SessionFactory di Hibernate è la classe factory tramite la quale otteniamo le sessioni e eseguiamo operazioni sul database. La SessionFactory di Hibernate fornisce tre metodi tramite i quali possiamo ottenere l’oggetto Session – getCurrentSession(), openSession() e openStatelessSession(). Questo tutorial spiega ognuno di essi con codice di esempio.
  14. Integrazione Hibernate log4j Hibernate 4 utilizza il logging di JBoss ma log4j è il framework di logging più popolare. Un tutorial rapido che spiega come integrare il logging di log4j con il framework Hibernate.
  15. Esempio di DataSource JNDI di Hibernate Tomcat Molte volte il framework Hibernate viene utilizzato nelle applicazioni web in esecuzione su Tomcat o su qualsiasi altro container servlet. Hibernate può utilizzare la DataSource definita come risorsa JNDI nel container, questo è l’approccio preferito per consentire al container servlet di gestire le connessioni al database utilizzando il pool di connessioni.
  16. Integrazione Spring Hibernate Spring è uno dei framework Java EE più utilizzati e Hibernate è il framework ORM più popolare. Ecco perché la combinazione di Spring Hibernate viene utilizzata molto nelle applicazioni enterprise. Questo tutorial utilizza Spring 4 e lo integra con Hibernate 3 per poi aggiornare lo stesso progetto per utilizzare Hibernate 4.
  17. Spring MVC Hibernate Exampleo Questo tutorial va avanti e spiega come integrare Hibernate con Spring MVC e utilizzare la gestione delle transazioni dichiarativa di Spring, anziché utilizzare la gestione delle transazioni di Hibernate.
  18. Struts2 Hibernate Integration Example Questo tutorial spiega il modo generale per integrare Hibernate con qualsiasi applicazione web attraverso l’uso di ServletContextLister, l’esempio utilizza Struts2 con Hibernate, ma l’integrazione dietro le quinte viene fatta utilizzando solo la tecnologia Servlet. Questo è diverso dall’integrazione di Spring perché Struts2 non fornisce alcun supporto integrato per l’integrazione di Hibernate.
  19. Esempio di Hibernate Validator La convalida dei dati è una parte integrante di qualsiasi applicazione. È un compito trasversale che avviene a livello di presentazione, livello di business e livello persistente. Ecco perché JSR-303 fornisce uno standard basato su annotazioni per l’applicazione della convalida per le proprietà dei bean Java. Hibernate Validator fornisce supporto per JSR-303 e questo tutorial ne mostra l’uso con un esempio semplice.
  20. Hibernate Tools Eclipse Plugin Se hai lavorato su progetti Hibernate, dovresti essere familiare con molte proprietà di cui abbiamo bisogno per la mappatura di Hibernate e il file di configurazione. Senza uno strumento appropriato che possa guidarci nella ricerca delle proprietà corrette, diventerà molto difficile configurare correttamente la nostra applicazione. È qui che entra in gioco Hibernate Tools Eclipse Plugin e diventa un plugin indispensabile per i progetti Hibernate.
  21. Domande di colloquio su Hibernate Avere una buona conoscenza del framework Hibernate è un punto in più per i colloqui basati su Java, ecco perché ho scritto questo post. Contiene la maggior parte delle domande importanti relative al framework Hibernate con risposte dettagliate. Dovresti leggerle prima di affrontare il colloquio per rinfrescare le tue conoscenze.

Tutorial su Hibernate – Correzioni di errori comuni

  1. Come configurare hibernate.cfg.xml per lavorare offline
  2. org.hibernate.AnnotationException: Nessun identificatore specificato per l’entità Classe
  3. org.hibernate.HibernateException: get non è valido senza transazione attiva
  4. org.hibernate.HibernateException: Nessuna CurrentSessionContext configurata
  5. Programma Hibernate non in chiusura
  6. L’accesso a DialectResolutionInfo non può essere nullo quando ‘hibernate.dialect’ non è impostato

Source:
https://www.digitalocean.com/community/tutorials/hibernate-tutorial