| Java Training   Overview 
				
This course offers a comprehensive and detail-oriented treatment of Hibernate® and the Java Persistence API (JPA) and their use in the Java-EE environment. We cover JPA basics including simple object/relational concepts and annotations, persistence contexts and entity managers, and configuration via persistence.xml. We get a good grounding in the Java Persistence Query Language (JPQL) and take advantage of a prepared JPQL query console to explore the two schemas on which the course's case studies are based. We then look at practical issues involved in using JPA in the enterprise context, including Java EE Bean Validation, working with server-managed data sources, dependency injection, container-managed transactions, and transaction propagation.
 This version of the course supports JPA 2.1 with Hibernate 5.0. EclipseLink 2.6 is deployed with the course software as well; switching providers is just a matter of moving a few lines in and out of XML comments in the relevant persistence.xml file, and we encourage instructors to demonstrate both providers, to illustrate portability and for comparison of some finer points.
 
 The course also supports either the Derby or Oracle RDBMS. Derby is bundled with the course software and is pre-configured; a script is included to change over to Oracle configurations for all exercises and schema-creation scripts are available for both.
 
 Java Training   Prerequisites
 
Java Training  Learning ObjectivesA strong Java programming background is essential for this course
Knowledge of relational database concepts and SQL is recommendedPrior experience with JDBC will be a plus but is not required. 
 After completing this course, the student should be able to:
		 
		Java Training   Course durationUnderstand the value of object/relational mapping and JPA's role as a standard for ORM implementations.Develop JPA entities using JPA annotations to align the Java classes, properties, and types to relational tables, columns, and types.Create entity managers and instantiate persistence contexts to perform create/retrieve/update/delete (CRUD) operations.Implement entity relationships of all cardinalities, including unidirectional and bidirectional relationships.Map composite primary keys, inheritance relationships, eager/lazy fetching, and cascading operations.Use JPQL to write object-oriented queries, and process query results.Define JSR-303 validation constraints on JPA entities and see them enforced by the JPA provider.Use server-managed data sources.Take advantage of Java-EE dependency injection to connect entity managers and factories.Use annotations to direct container-managed transactions and to control transaction propagation. 
 4 Days
 
 Java Training   Course outline
 
 Chapter 1. Introduction to JPA
 
Chapter 2. Single-Table MappingObject/Relational MappingMismatches Between Relational and Object ModelsThe Java Persistence APIHibernateArchitectureEntity MetadataThe Entity Manager 
Chapter 3. Mapping AssociationsAnnotationsJavaBean StandardsProperty, Field, and Mixed AccessTable and Column MappingPrimary Keys and Key GenerationType MappingsTemporal and Enumerated TypesEmbedded TypesConverters 
Chapter 4. Entity Managers@Embeddable TypesEntity Relationships@ManyToOne Relationships@OneToOne Relationships@OneToMany Relationships@ManyToMany RelationshipsEager and Lazy Loading 
Chapter 5. JPQLPutting Entities to Workpersistence.xmlEntity State and TransitionsManaging TransactionsPersistence OperationsCreating QueriesNamed QueriesQuery ParametersNative QueriesStored-Procedure Queries 
Chapter 6. Persistence ComponentsThe Java Persistence Query LanguageHQL and JPQLQuery StructurePath ExpressionsFilteringScalar FunctionsUsing Native FunctionsOperators and Precedencebetween, like, inis null, is emptyOrderingAliasesGroupingAggregate FunctionsJoinsFetch JoinsConstructorsUpdates and Deletes 
Chapter 7. Advanced MappingsEncapsulating Persistence LogicDesign ConsiderationsTestabilityTransaction ControlException HandlingGeneric Types 
Chapter 8. ValidationInheritance StrategiesSingle-Table StrategyJoined-Table StrategyTable-Per-Concrete-Class StrategyQuerying Over Inheritance RelationshipsType Identification with .classSecondary TablesComposite Primary Keys@IdClass and @EmbeddedIdDerived Identifiers@ElementCollectionDefault Values@Version FieldsCascading and Orphan RemovalDetachment and MergingHibernate ExtensionsThe @Type Annotation 
Chapter 9. JPA in Java EEJSR-303 ValidationConstraint AnnotationsValidation ModesValidation GroupsHandling Validation Exceptions 
System RequirementsEnterprise ApplicationsDependency InjectionSeparation of ConcernsJNDIJDBC Data Sources@PersistenceUnit and @PersistenceContextContainer-Managed TransactionsEnterprise JavaBeans@Stateful and @Stateless@EJB@TransactionAttributeLogging TransactionsImpact on Exception HandlingPersistence-Context DurationExtended Persistence ContextsTestability 
 Minimum Hardware Requirements
 Hardware – recommendedCore i5, 1.8 GHz, 4 gig RAM, 1 gig disk space.
 
 
			    
		              
		    Operating systemCore i5, 2.5 GHz GHz, 8 gig RAM, 1 gig disk space. Network and SecurityTested on Windows 7/8, Mac OS 10.8.5
 
 Limited privileges required
 
 Software
 
 All free downloadable tools, with an option to use certain commercial products.
 
 
 |