1. Richiamo di conoscenze
Iniziamo questo corso formativo con un piccolo esempio relativo a Hello World per rinfrescare le nostre nozioni di base di Hibernate. Subito dopo ci addentreremo in tematiche più impegnative.
2. Classe avanzata e property mapping
Daremo uno sguardo alle diverse strutture di metadata per il mapping disponibili per e all’interno di Hibernate. Verranno trattate le annotazioni standard JPA, nonché alcune estensioni delle annotazioni di Hibernate. Il sistema del tipo di mapping di Hibernate è un’importante caratteristica di supporto per i modelli di dominio a grana fine Java: imparerete come meglio progettare le vostre classi persistenti. Parleremo delle strategie di mapping integrato per entità, dei tipi simple value e dell’eredità di classe. L’estensione personalizzata del sistema di tipo Hibernate rappresenta un altro argomento incluso in questo modulo formativo.
3. Associazioni e collezioni
Le associazioni complesse tra entità, di tipo single valued e con collezioni, spesso richiedono una conoscenza avanzata di mapping in Hibernate. Tratteremo vari tipi di mapping e il comportamento pienamente polimorfico di Hibernate. Quindi metteremo in pratica queste conoscenze nell’esercitazione di laboratorio.
4. Elaborazione transazionale
Hibernate definisce diversi stati di oggetto e fornisce delle API per cambiare lo stato di un oggetto. Vi mostreremo come utilizzare queste API correttamente, anche in situazioni difficili. Utilizzerete i filtri dati Hibernate per accedere a dati regionali e temporali. Prenderemo in esame concetti di elaborazione transazionali più avanzati relativamente al blocco ottimistico, pessimistico e alle transazioni applicative di tipo long running.
5. Richiamo e prelievo di dati
Le opzioni avanzate di recupero degli oggetti e l’uso corretto delle strategie di prelievo per associazione di Hibernate rappresentano gli argomenti di questo modulo formativo. La discussione verterà anche sul nuovo Criteria and Example API e su HQL avanzato, EJB-QL (utilizzando l’API di persistenza EJB 3.0) e sulle query native in SQL. Il laboratorio include esercitazioni sul caricamento e la memorizzazione efficaci di oggetti.
6. Design applicativo
Una parte particolarmente apprezzata del corso Hibernate, questo modulo illustra come progettare e implementare uno strato di persistenza utilizzando Hibernate. Imparerete a gestire correttamente la SessionFactory e la Session in applicazioni a due e tre livelli e i metodi migliori per gestire le transazioni. Implementerete l’intercettazione di eventi nello strato di persistenza per l’audit logging e altri casi speciali. Potrebbero inoltre interessarvi le capacità di conversione dei dati di Hibernate per il mashaling XML automatico o la rappresentazione di oggetti di dominio nelle HashMaps annidate.
7. Integrazione di sistemi preesistenti
Molti sviluppatori Hibernate devono lavorare con schemi di database e dati già esistenti. Purtroppo, questi schemi di solito non si trovano nella loro forma migliore e i dati potrebbero risultare difficili da mappare in oggetti Java. Tratteremo il tema della progettazione inversa utilizzando il set di strumenti di Hibernate e le tecniche avanzate di mapping Hibernate quali i mapping basati su formula, le chiavi naturali e composite e i trigger.
8. Distribuzione e amministrazione
Far funzionare Hibernate di solito è molto semplice e nella maggior parte dei casi la distribuzione richiede solo una singola configurazione. In questo modulo formativo vi mostreremo opzioni di configurazione e trucchi più avanzati, inclusa la distribuzione di Hibernate come servizio JMX e JCA in ambienti J2EE. Una volta distribuita la vostra applicazione, l’amministrazione diventa una questione importante. Imparerete ad usare efficacemente la funzionalità di logging e a individuare problemi di performance utilizzando il monitoraggio del runtime con le nuove interfacce di statistica.
9. Ottimizzazione
Nel nostro ultimo modulo formativo ottimizzeremo l’accesso alla banca dati – il nostro obiettivo consiste nell’eseguire le query ottimali in SQL in ogni le situazioni. Apprenderete le nozioni di base sul data caching e su quando utilizzarlo, quindi abiliteremo il sistema di caching a doppio livello di Hibernate nei nostri laboratori e la cache per i risultati della query.