Oracle Corporation

1Z0-898: Java EE - Develop Database Applications with JPA

30 horas
695,00 €
Presencial o Live Virtual Class
Presencial o Live Virtual Class

Acerca de este curso

El presente curso oficial de Oracle está diseñado para otorgar a los participantes una base sólida en el uso de Java Persistence API para simplificar el desarrollo de la capa de persistencia dentro de sus aplicaciones en las plataformas Java SE y/o Java EE.

JPA es una abstracción sobre JDBC que permite realizar un mapeo ORM entre un modelo de negocio orientados a objetos y un modelo relacional de forma sencilla, realizando toda la conversión entre los objetos y las tablas de una base de datos.

Dicho curso se enmarca dentro del programa Workforce Development Program (WDP), iniciativa diseñada por Oracle para ayudar a la nueva generación de profesionales TI a aprender las habilidades más demandadas sobre tecnologías Oracle, así como ayudarles en su preparación a los exámenes de certificación asociados al curso, suponiendo un valor añadido y diferenciador en su perfil profesional.

A quién va dirigido

Este curso está dirigido a desarrolladores de aplicaciones en las plataformas Java SE y/o Java EE interesados en conocer Java Persistence API (JPA) para simplificar el desarrollo de la capa de persistencia en sus aplicaciones.

Para un máximo aprovechamiento del curso, los participantes deberán poseer conocimientos del paradigma de programación orientado a objetos (tanto a nivel teórico como práctico), experiencia en el uso del lenguaje de programación Java y en la utilización de sistemas gestores de bases de datos relacionales (SGBDs).

Objetivos del curso

Una vez finalizado el curso, el alumno habrá adquirido los conocimientos y habilidades para:

  • Entender los conceptos claves de Java Persistence API.
  • Realizar operaciones CRUD mediante JPA en las plataformas Java SE y EE.
  • Realizar validación de datos mediante Bean Validation.
  • Optimizar JPA a nivel de rendimiento.
  • Aplicar transacciones y bloqueo.
  • Mapear tablas relacionales a objetos usando técnicas ORM y JPA.
  • Crear modelos robustos de entidades.
  • Crear consultas dinámicas y estáticas mediante Java Persistence API Query Language.
  • Crear consultas fuertemente tipadas mediante Java Persistence API Criteria API.

Contenidos

Introduction to Java Persistence API

  • Describing the Java Persistence API
  • Creating entity classes
  • Using persistent field and properties
  • Using a generated primary key (table, sequence and identity)
  • Obtaining an Entity Manager
  • Creating a Persistence Unit
  • Using an entity manager to create, find, update, and delete entities
  • Creating typed queries in JPA

Working with JPA in a Java Enterprise Environment

  • Evaluating the role of the container with JPA
  • Accessing JPA entities from a servlet
  • Evaluating the application of JSF as a user interface framework
  • Accessing JPA entities from Enterprise JavaBeans
  • Determining the impact of using stateless, stateful, and singleton session beans on entities
  • Configuring a persistence context in an EE context

Introduction to the Auction Application Case Sudy

  • Describing the auction application
  • Defining the domain objects of the auction application
  • Describing the implementation model for the auction system

Modeling Relational Databases with JPA Entities

  • Examining relationships in the data and object models
  • Using relationship properties to define associations
  • Implementing one-to-one unidirectional and bidirectional associations
  • Implementing many-to-one/one-to-many bidirectional associations
  • Implmenting many-to-many unidirectional and bidirectional associations
  • Using OrderBy and OrderColumn annotations to define sort order
  • Applying the OrphanRemoval annotation to prevent orphaned entities

Working with the Entity Manager

  • Describing the relationship between an entity and an entity manager, and between a persistence context and a persistence unit
  • Differentiating between transaction-scoped and extended entity managers
  • Describing the entity life cycle
  • Using entity manager operations to perform CRUD operations: persist, find, merge, remove
  • Examining the role of the entity manager with detached entities
  • Defining and use cascading operations

Persisting Enums and Collections

  • Persisting entities that contain enums
  • Persisting entities that contain collections
  • Persisting entities that contain Maps

Creating Queries with the Java Persistence Query Language (JPQL)

  • Describing the Java Persistence Query Language (JPQL)
  • Contrasting JPQL with native queries
  • Using conditionals to filter results
  • Refining queries to return only needed data
  • Performing joins between entities
  • Creating dynamic queries with parameters
  • Performing bulk updates and deletes

Using the Critieria API

  • Contrasting the Critiera API with JPQL
  • Using the Critieria API structure and core interfaces
  • Creating SELECT, FROM, and WHERE clauses
  • Creating paths and expressions
  • Using ORDER BY, GROUP BY, and HAVING clauses
  • Using the canonical metamodel

Implementing Bean Validation with JPA

  • Describing the JPA lifecycle phases where validation takes place
  • Creating an entity listener class
  • Utilizing validation groups
  • Using built-in validation constraint annotations provided by Bean Validation
  • Creating a custom Bean Validation constraint

Applying Locking and Transactions

  • Describing transaction semantics
  • Comparing programmatic and declarative transaction scoping
  • Using JTA to scope transactions programmatically
  • Implementing a container-managed transaction policy
  • Supporting optimistic locking with the versioning of entity components
  • Supporting pessimistic locking by using EntityManager APIs
  • Describing the effect of exceptions on transaction state

Advanced Modeling: Entity Inheritance Relationships

  • Evaluating object-relational mapping strategies for entity inheritance
  • Applying single-table-per-class, joined-subclass, and table-per-class inheritance mapping strategies
  • Using embeddable classes
  • Overriding mappings with the @AttributeOverride and @AssociationOverride annotations
  • Specifying composite primary keys

Optimizing JPA Performance

  • Using lazy fetching to prevent the loading of entities that are not being used
  • Using pagination to control the amount data that is needed at any one time
  • Modifying queries to prevent the N + 1 problem
  • Creating read-only queries
  • Describing performance issues associated with IDENTITY ID generation
  • Creating and using stored procedures with JPA and EclipseLink
  • Using cache optimizations with JPA and EclipseLink

Convocatorias abiertas

Nota informativa

PUE está reconocido como centro oficial de formación por parte de Oracle con la figura de Oracle Approved Education Center (OAEC).

PUE cuenta, además, con el reconocimiento de formar parte del programa WDP - Workforce Development Program de Oracle. La iniciativa WDP tiene por objetivo ayudar a las instituciones académicas a preparar estudiantes como futuros especialistas en las tecnologías más demandadas por el mercado laboral.

La formación impartida por PUE en sus cursos de calendario se enmarca dentro de la iniciativa WDP y se dirige a alumnos que, tanto en situación de desempleo como profesionales en activo, deseen acceder de la forma más ventajosa posible a cursos en tecnologías Oracle (bases de datos, Java, etc) de forma oficial y reconocida.