*

Java Data Access with Hibernate

Java Data Access with Hibernate Training

AanbiederTwice IT Training
Kosten 1.350,00
Meer informatie over Twice IT Training

Overzicht

In deze cursus komt Object Relational mapping met Hibernate aan de orde. Na een overzicht van de data access mogelijkheden in Java, waaronder JDBC, en de problemen daarbij, wordt ingegaan op de basis concepten en architectuur van het Hibernate Framework. De rol van het Hibernate configuration file wordt besproken en vervolgens wordt ingegaan op het mappen van Java classes op database tabellen. Hierbij wordt de rol en de structuur van de XML mapping files besproken evenals de verschillende properties en attributen die daarbij een rol spelen. De centrale rol van de Hibernate Session die vanuit de Hibernate SessionFactory wordt aangemaakt komt aan de orde en aandacht wordt besteed aan de verschillende toestanden die Java objecten in relatie tot de database kunnen hebben zoals persistent, transient en detached. Ook de verschillende key generation strategies komen aan de orde en het mappen van associatie relaties en inheritance relaties op de database zijn onderdeel van de cursus. Vervolgens worden de mogelijkheden van Hibernate Query language, HQL, besproken en is er aandacht voor Hibernate criteria en het gebruik van native SQL queries. Tenslotte komen ook transacties in Hibernate aan bod, is er aandacht voor het gebruik van annotaties als alternatief voor XML mapping files en passeren de verschillende varianten van Hibernate caching de revu. Volledige omschrijving

Bestemd voor

Ervaren Java ontwikkelaars die Hibernate willen inzetten voor het benaderen van data in databases.

Benodigde kennis

Ervaring met Java programmeren en object orientatie is vereist. Kennis van database structuren en SQL is bevordelijk voor een goede begripsvorming.
Inschrijven

Beschrijving

Module : Java Persistence Java Persistence Traditional Persistence Transparent Persistence Persistence Technologies Direct File I/O Serialization Java Database Connectivity JDBC Architecture Executing Statements Retrieving Results JDBC Drivers JDBC URL’s Problems with JDBC Module : Hibernate Basics What is Hibernate? Hibernate Characteristics Hibernate Configuration Hibernate Configuration File Persistent classes Mapping Files Hibernate Architecture Hibernate Core Concepts Storing Objects Generated Table and SQL Primary Key Column Lifecycle States Persistence Lifecycle Module : Mapping Persistent Objects POJO’s and JavaBeans equals and hashcode Basic Mappings Class to Table Mappings Property Mapping Identifiers and Generators Multiple Table Mappings Hibernate SessionFactory Hibernate Session Entities and Values Entity Lifecycle Persistent State Transient State Persistent Object Updates Automatic Dirty Checking Detached State Deleting Objects Merging Module : Mapping Relationships Type of associations Many-to-one Bidirectional Many-to-one Mapping to List, Map Mapping to Bag and Array Using Comparator One-to-one Bidirectional One-to-one Many-to-many Bidirectional Many-to-many Many-to-many Identifier Bag Value Type Collections Collections of Components Sorting Collections Cascading over associations Lazy versus Eager Loading Proxies Detached Objects and Proxies Polymorphic Associations Module : Mapping Inheritance Inheritance Mapping Strategies Single Table per Class Hierarchy Single Table Data Model Discriminator Columns Advantages and Disadvantages Table per Concrete Class Strategy Table per Concrete Class with unions Table per Class Data Model Advantages and Disadvantages Joined Subclass Strategy Joined Data Model Polymorphism Choosing an Inheritance Strategy Module : Queries with HQL and Criteria Hibernate Fetching Options Hibernate Query Language HQL Parameters Named Queries Native SQL Criteria Restrictions Query By Example Scrolling and Pagination Query Hints Query Option Pros/Cons N+1 Selects Join Fetching Subselect Fetching Batch Fetching Queries and Fetching Strategies Cartesian Product Problem Module : Transactions and Concurrency Java Transaction API JTA versus JDBC Transactions Transaction Configuration Hibernate Transaction API Transaction handling pattern Concurrency Isolation Levels Optimistic Locking Versioning Pessimistic Locking ThreadLocal Transactions Conversations Session Lifetime Concurrent Access Module : Hibernate Annotations Metadata Annotations Pros/Cons Configuring Hibernate Annotations Entity and table annotation Primary key annotations Column annotations Special Relation annotations Join column annotations Components Inheritance EJB3/JPA Annotations Module : Hibernate Configuration Connection Pools The promise of Cache Hibernate Caching Architecture First Level Cache Second Level Cache Cache Concurrency Configuring Second Level Cache Cache Regions Eviction