Java Data Access with Persistence API

Java Data Access with Persistence API Cursus

AanbiederLearnit Training
Kosten 1.650,00
Meer informatie over Learnit Training

Overzicht

Korte inhoud In deze cursus komt Object Relational mapping met de Java Persistence API 2.0 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 ... Volledige omschrijving

Bestemd voor

Ervaren Java ontwikkelaars die de Java Persistence API 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 bevorderlijk voor een goede begripsvorming.

Keurmerken

Inschrijven

Beschrijving

Korte inhoud

In deze cursus komt Object Relational mapping met de Java Persistence API 2.0 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 JPA. De rol van de Entity Manager en het persistence.xml configuration file wordt besproken en aandacht wordt besteed aan de verschillen tussen versie 1.0 en 2.0 van de JPA specificatie. Vervolgens wordt ingegaan op het concept JPA Entity, de lifecycle van Entities en het mappen van Entity classes op database tabellen. De verschillende toestanden die Entities in relatie tot de database kunnen hebben zoals new, persistent, detached en removed worden hierbij besproken en er wordt ingegaan op het begrip merging. Ook komt de rol van annotations en XML mapping files aan de orde evenals de verschillende properties en attributen die daarbij een rol spelen. De verschillende key generation strategies komen aan bod evenals het mappen van associatie relaties en het mappen van inheritance relaties tussen Entities. Vervolgens worden de mogelijkheden van de JPA Query language, JPQL, besproken, is er aandacht voor JPA criteria en het gebruik van native SQL queries. De functie en werking van Entity callbacks die vlak voor en vlak na de uitvoering van een persistence operatie worden aangeroepen, wordt uit de doeken gedaan evenals die van Entity Listener classes. En ook het gebruik van interceptors voor crosscutting concerns zoals logging en security staat op het programma. Tenslotte wordt aandacht besteed aan het gebruik van JPA in een Java EE applicatie, de interactie met EJB's en de wijze van packaging. Tenslotte komen ook transacties in JPA aan bod zowel in een Desktop omgeving als in een Java EE omgeving.

Invulling

De concepten worden behandeld aan de hand van presentatie sheets en demos. De theorie wordt afgewisseld met oefeningen. Alle onderwerpen die gevraagd worden bij het Java Platform, Enterprise Edition 6 Java Persistence API Developer Certified Professional (CX-311-094) Exam komen aan de orde. Het cursusmateriaal is Engelstalig.

Specifieke inhoud

Module: Intro 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: Java Persistence API

  • Traditional Persistence
  • Object Relational Mapping
  • Persistence API and EJB's
  • Entity Classes
  • Entity Manager
  • Persistence Context
  • Entity Identity
  • Entity Managers
  • Entity Lifecycle
  • Entity Relationships
  • Persisting Objects
  • Removing Objects
  • Merging Objects
  • Managing Identity
  • JPA 1.0 versus 2.0
  • New Features JPA 2.0

Module: Mapping Persistent Objects

  • Mapping Annotations
  • Table Annotation
  • UniqueConstraint Annotation
  • Column Annotation
  • Id Annotation
  • IdClass Annotation
  • GeneratedValue Annotation
  • Version Annotation
  • Basic Annotation
  • Lob Annotation
  • Temporal Annotation
  • Enumerated Annotation
  • Transient Annotation

Module: Mapping Relationships

  • Entity Relationship types
  • Bidirectional OneToOne
  • Bidirectional ManyToOne
  • Bidirectional OneToMany
  • Bidirectional ManyToMany
  • Unidirectional OneToOne
  • Unidirectional ManyToOne
  • Unidirectional OneToMany
  • Unidirectional ManyToMany
  • Cascading persist

Module: Mapping Inheritance

  • Inheritance Mapping Strategies
  • Single Table per Class Hierarchy
  • Single Table Data Model
  • Advantages and Disadvantages
  • Table per Concrete Class Strategy
  • Table per Class Data Model
  • Advantages and Disadvantages
  • Joined Subclass Strategy
  • Joined Data Model
  • Advantages and Disadvantages

Module: JPA Query Language

  • Java Persistence QL
  • Projections
  • Subqueries
  • Joins
  • Update
  • Delete
  • Queries
  • Dynamic Query
  • Static Query
  • Criteria API
  • CriteriaQuery interface
  • Query Error Detection
  • CriteriaBuilder
  • Metamodel in JPA 2

Module: Entity Callbacks and Listeners

  • Life Cycle Callback methods
  • Entity Listeners
  • Life Cycle Callback Rules
  • Signature Life Cycle Callbacks
  • Signature Entity Listeners
  • @PrePersist and @PostPersist
  • @PreRemove and @PostRemove
  • @PreUpdate and @PostLoad
  • Multiple Invocation Callbacks
  • Invocation Order

Module: Interceptors

  • Interceptors
  • Interceptor Classes
  • @AroundInvoke
  • Example Interceptor
  • Interceptor Lifecycle
  • Interceptor Types
  • Default Interceptors
  • Exclude Interceptors

Module: Java EE integration

  • Enterprise Java Beans
  • Sessions Beans
  • Statefull and Stateless
  • JNDI lookups
  • EJB injection
  • Transaction-Scoped Persistence Context
  • Extended Persistence Context
  • Persistence Unit
  • Packaging in EAR files
  • Deployment Descriptors

Module: Transactions

  • Transactions
  • Demarcating Boundaries
  • Container Managed
  • Bean Managed
  • Client Managed
  • Transaction Attributes
  • SessionSynchronization
  • Before Completion
  • After Completion

Deze gegegevens zijn voor het laatst bijgewerkt op 6 februari 2012.