Dashboard > Struts University > Home > JPA Training Course > JPA Agenda
JPA Agenda
Added by Ted Husted, last edited by Ted Husted on Dec 05, 2007  (view change)
Labels: 
(None)


Java Persistence API Training Course for Struts 2 - Sample Agenda

Session Presentation Lab / Use Case Timeframe
Tue      
1-1 Building applications with Hibernate 3 and Java 5 JPA Setup 8:30a-10:30a
1-2 Testing the persistence layer CRUD Tests 10:30a-11:30p; 12:30p-1:30p
1-3 Mapping relational data to objects Register, Profile 1:30p-3:30p
1-4 Annotating persistence applications (Tue am) 3:30p-4:30p
Wed      
2-1 (Tue pm) Login 8:30a-9:30a
2-2 Querying for persistence objects Register ext 9:30a-11:30p
2-3 Going beyond the JPA with Hibernate 3 H3 Validation 12:30p-2:30p
2-4 Building applications with Spring 2 and Java 5 JPA Template 2:30p-4:30p
Thu      
3-1 Injecting persistence with Spring 2 Profile 8:30a-10:30a
3-2 Building applications with Struts 2 and Java 5 Welcome 10:30a-11:30p; 12:30p-1:30p
3-3 Integrating Spring 2 and Java Persistence with Struts 2 Logon UI 1:30p-3:30p
3-4 Best Practices N/A 3:30p-4:30p

Course Outline

A day-by-day play by play.


Day One - Meet the JPA

We hit the ground running by setting up a starter application that uses JPA and unit tests to create its own database.

Preview: Welcome to the course!
  • Scope
  • Format
  • Materials
  • Schedule

1-1 Building Persistence Applications

  • What's the problem?
  • How does JPA (or Hibernate 3) work?
  • Does MyEclipse work with JPA?

1-1 Lab: Developers can create a JPA-enabled project with MyEclipse (Setup MyEclipse for JPA - System use case).

1-2 JUnit Jumpstart (Testing the persistence layer)

  • Why do we test applications?
  • How do we test applications?
  • Why do we need a testing framework?
  • How do we get started with JUnit?

1-2 Lab: Developers can setup a simple CRUD test case (Setup CRUD testing - System use case).

1-3 Mapping Object Graphs to Relational Data

  • What are object graphs?
  • How do we map properties?
  • How do we map relationships?
  • How do we map inheritance?

1-3 Lab: Clients can create and edit a user account (Register, Profile).

1-4 Annotating Persistence Applications

  • What are annotations?
  • How do we declare properties?
  • How do we declare relationships?
  • How do we declare inheritance?

1-4 Lab: Clients can add a list of Subscriptions to a user account (Subscribe).


Day Two - Hibernate and beyond!

Where JPA ends, Hibernate begins.

Review: Meet the JPA
  • Infrastructure, infrastructure, infrastructure
  • Test first
  • Mapping matters
  • Metadata rules

2-1 Querying for Persistence Objects

  • How do we write simple queries?
  • Can we use functions?
  • Can we use parameters?

2-1 Lab: 2-1 Lab: Users can log into an existing account (Login). (Other extra credit queries.)

2-2 Going beyond the JPA with Hibernate 3

  • Criteria Queries
  • Annotation Extensions
  • Validator
  • Search
  • Shards

2-2 Lab: When clients create or edit a user account, the system prevents entry of invalid values (Register ext).

2-3 Building applications with Spring 2 Core and Java 5

2-3 Lab: Developers can simplify unit tests by injecting objects with known values.


Day Three - Adding Spring and Struts to the mix

As cool as JPA and Hibernate may be, we all need a little help from our friends.

Review: Hibernate and Beyond!
  • Bring a magnet to a haystack
  • Trust but verify
  • It's about the objects

3-1 Injecting persistence with Spring 2 Core

3-1 Lab: Developers can utilize Spring to abstract data management.

3-2 Building applications with Struts 2 and Java 5

  • Can we use a conventional design?
  • Why use frameworks?
  • What value does Struts 2 add?

3-2 Lab: Welcome

3-3 Integrating Spring 2 Core and Java Persistence with Struts 2

3-3 Lab: Logon

3-4 Best Practices

  • Hibernate/JPA
  • Spring 2
  • Struts 2
  • Performance
Review: Adding to the mix
  • Injection is magic
  • Reduce, Recycle, Reuse
  • Better together
CRUD-Notes (Struts University)
dao-Notes (Struts University)
Login-JPA-Notes (Struts University)
Login-UI-JPA-Notes (Struts University)
Register-JPA-Notes (Struts University)
Register2-JPA-Notes (Struts University)
Starter-Notes (Struts University)
Subscribe-JPA-Notes (Struts University)
TestData-Notes (Struts University)
Welcome-JPA-Notes (Struts University)

Site running on a free Atlassian Confluence Open Source Project License granted to OSS. Evaluate Confluence today.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.5 Build:#811 Jul 25, 2007) - Bug/feature request - Contact Administrators