Introduction to Java Hibernate – JAV850
This three day Hibernate Java training course is a developer’s workshop that teaches students the most popular object-relational O/R mapping framework for Java environments. Object relational mapping in large enterprise applications is difficult. The task is so difficult that the problem of storing and retrieving objects to a relational database has its own name – impedance mismatch. In this class, students learn object-relational mapping concepts and the various issues and options available in Java to address object persistence.
Introduction to Hibernate – 3 Days – JAV850 Request a Class Date
his three day Hibernate Java training course teaches students the most popular object-relational mapping framework for Java environments. Object relational mapping in large enterprise applications is difficult.
Course ID: JAV850 Duration: 3 days
Audience: Java programmers with a need to understand the Hibernate framework and API.
Prerequisites: Intermediate knowledge of Java programming and a basic understanding of relational databases are recommended.
Hibernate lets you develop persistent classes following common Java idioms – including association, inheritance, polymorphism, composition and the Java collections framework. The Hibernate Query Language, designed as a minimal object-oriented extension to SQL, provides an elegant bridge between the object and relational worlds. Hibernate also allows you to express queries using native SQL or Java-based Criteria and Example queries. JBoss has integrated Hibernate into its JEMS (Java Enterprise Middleware System) product line. The Java Persistence API (EJB 3) specification derives a great deal of its architecture from Hibernate, and the Hibernate annotations are compatible with the Java Persistence annotations. This promises to make Hibernate an even more important technology. With these fundamentals, the course then explores the basics of Hibernate object persistence and configuration. It also digs into the details of Hibernate mapping, queries, transactions, and concurrency.
After taking this class, developers will be able to build faster, more flexible and easier to maintain application persistence layers and overcome impedance mismatch with the Hibernate framework.
This Java programming course is offered as a live, hands-on instructor-led online or onsite training class for individuals and small groups on our public schedule. Additionally we can deliver this training course privately onsite at your location or privately online. A private training course typically makes most financial sense with about four to five participants. To receive a customized Java training proposal and quotation for a private training at your location or online, please complete the request a quote form.
Java Hibernate Training Topics:
- Persistence
- Object Persistence
- Object/Relational Paradigms
- Impedance Mismatch
- Object Relational Mapping ()ORM)
- Persistent Framework
- Hibernate
- Java ORM/Persistent Frameworks
Hibernate Architecture
- Hibernate Architecture and PI
- Hibernate Installation/Setup
- Configuration
- Configuration Properties
- Mapping Files
- Persistent Classes
- Persistent Classes
- POJOs
- JavaBeans
- Basic Mapping
- Class to Table Mappings
- Property Mapping
- Identifiers
- Generators
- Natural Keys
- Identifier Exposure
- Quoting SQL Tables and Columns
Working with Persistent Objects
- Entity Lifecycle
- Transient Stat
- Persistent State
- Persistent Object Updates and Automatic Dirty Checking
- Detached State
- Deleted
- Object Identifiers Revisited
- Merge
Components
- Domain Model
- Entities and Values
- Components
Associations
- Many-to-one
- Bidirectional Many-to-one
- Other Collections
- Many-to-one List
- Many-to-one Map
- Many-to-one Bag
- Many-to-one Array
More Associations
- One-to-one
- Bidirectional One-to-one
- Many-to-many
- Bidirectional Many-to-many
- Many-to-many Identifier Bag
Value Type Collections
- Collections of Value Types
- Collections of Components
- Sorting Collections
Inheritance
- Inheritance Mapping Strategies
- Table per concrete class
- Table per subclass
- Table per hierarchy
- Inheritance Mapping Pros/Cons
- Polymorphism
- Table per concrete class with unions
- Choosing an Inheritance Strategy
Transitive Persistence
- Transitive Persistence
- Lazy Loading
- Proxies
- Eager Loading
- What’s a Proxy?
- Detached Objects and Proxies
- Polymorphic Associations Revisited
Custom Mapping
- Custom Mapping Types
- UserType
- Enumerations
HQL
- Hibernate Object Fetching Options
- Hibernate Query
- HQL
- HQL Parameters
- Named Queries
- Native SQL
Criteria
- Hibernate Criteria
- Restrictions
- Query By Example
- Scrolling
- Pagination
- Query Hints
- Query Option Pros/Cons
Transactions and Concurrency
- The Java Transaction
- Hibernate Transaction Configuration
- Hibernate Transaction API
- Concurrency
- Isolation Levels
- Optimistic Locking
- Versioning
- Optimistic Locking without Versioning
- Pessimistic Locking
Appendix A: Fetching Strategies
- N + 1 Selects
- Fetching Strategies
- Join Fetching
- Subselect Fetching
- Batch Fetching
- Queries and Fetching Strategies
- Cartesian Product Problem
Appendix B: Cache
- The Promise of Cache
- Hibernate Caching Architecture
- First Level Cache
- Second Level Cache
- Cache Concurrency
- Configuring Second Level Cache
- Cache Regions
- Eviction
Appendix C: Annotations
- Metadata
- Annotations Pros/Cons
- Configuring Hibernate Annotations
- EJB3/JPA Annotations
- Entity Annotations
- Embedded Object (Component) Annotations
- Inheritance Annotatio