Java Data Objects Training

Workshop Length

4 days

Objective

Gain hands-on experience building database applications using Sun's JDO technology.

Description

JDO (Java Data Objects) is Java's new API for interacting with databases. If you've ever created a Java database application using JDBC, then you know how labor intensive it is. JDO operates at a higher level, transparently transferring data between in-memory Java objects and your database. The bottom line: less coding and more productivity.

This hands-on workshop focuses on the practical uses of JDO. In class, you'll build a complete JDO application that demonstrates JDO's key features.

Prerequisites

Before taking the JDO training workshop, students should already be familiar with Java and databases. Also, some knowledge of HTML and JSP would help, since our sample application will be web based.

Pricing

For private, dedicated workshops see our price page. For public, open-enrollment workshops, see the table to the right.

Topics

  • Object Persistence Overview
    • Object Persistence versus O/R Mapping
    • Ways to persist objects
    • Domain Driven Design
    • JDO versus Hibernate versus EJB Entity Beans
    • JDO 2.0 and EJB 3.0
  • Object Persistence Concepts
    • O/R Success Factors
    • Caching
      • Transactional Cache
      • Secondary (L2) Cache
      • Distributed Cache
      • Does JDO "own" the database
    • JDO Object States (Life cycle)
    • Transitive Persistence
    • Enhancement
      • Persistence Capable
      • Persistence Aware
      • Runtime versus Build-time Enhancement
    • Metadata
      • Object Model Metadata
      • Mapping Metadata
      • XML Metadata
      • Java 5 Annotation based Metadata
    • JDO/EJB 3 Compared to
      • JDBC
      • EJB 2.0 CMP
      • Hibernate
      • Serialization
  • JDO API
    • JDOHelper
    • PersistanceManager
    • PersistanceManagerFactory
    • InstanceCallbacks
    • Transaction
    • Query
    • Extent
  • EJB 3.0 API
    • Persistence
    • EntityManager
    • EntityManagerFactory
    • EntityTransaction
    • Query
  • JDO/EJB 3.0 Type Support
    • First Class
    • Second Class Objects
    • Supported Value Types
    • Custom Value Types
    • Entities versus Embedded
  • Identity
    • Application
    • Datastore
    • EJB Identity
  • Working with JDO Objects
    • Inserting/Updating/Deleting/Fetching Data
  • Working with EJB Objects
    • Inserting/Updating/Deleting/Fetching Data
  • Transactional Management
    • Non-transactional reads
    • Optimistic Transactions
    • Long running transactions
    • Locking and versioning
  • Designing JDO/EJB 3.0 Applications
    • ThreadLocal Utility
    • Web Applications
    • Data Transfer Objects
    • Layered Architectures
    • Service Oriented Architectures
    • Fetch Groups
    • Disconnected Operation (Round tripping)
    • Root objects
    • Intercepters
  • JDO Query Language
    • Filters
    • Parameters
    • Variables
    • Relationships/Joins
  • EJB Query Language
  • O/R Mapping
    • O/R Mismatches
      • Logical Mismatch
      • Physical Mismatch
      • Transparency
    • Inheritance
      • Concrete Table
      • Class Table Inheritance
      • Single Table Inheritance
    • Collections
      • Lists
      • Sets
      • Maps
    • Many-to-many/one-to-many
    • Inverse-Owner
  • J2EE Integration
    • Using JTA
    • JDO with Session Beans

Upcoming Dates

We don't cancel classes due to low enrollment.

Date Price  
06/16/2008 $2,400 Signup
06/23/2008 $2,400 Signup
06/30/2008 $2,400 Signup
07/07/2008 $2,400 Signup
07/14/2008 $2,400 Signup
07/28/2008 $2,400 Signup
08/04/2008 $2,400 Signup
08/11/2008 $2,400 Signup
08/18/2008 $2,400 Signup
08/25/2008 $2,400 Signup
09/01/2008 $2,400 Signup
09/08/2008 $2,400 Signup
09/15/2008 $2,400 Signup
09/22/2008 $2,400 Signup
09/29/2008 $2,400 Signup
10/06/2008 $2,400 Signup
10/13/2008 $2,400 Signup