Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
If you’re a Java programmer who wants to learn the fundamentals and some of the advanced topics of Java persistence with Hibernate, then you’re the one this course is designed for.
We'll be working with Hibernate 4.3.5.Final (and applicable updates for Hibernate 5.0), and using Hibernate as a JPA provider for the most part of this course. You'll be learning the fundamentals and some of the advanced JPA features for object/relational mapping, querying, caching, performance and concurrency.
Everything important that you're going to experience when you're persisting Java objects with Hibernate is covered during the lectures itself, with the help of animations and stepping through the code. It will allow you to focus more on the concept and the events happening at runtime at the very same time when you're learning a concept, rather than waiting for me go through lengths of coding first before I could show you the same result. And then you practice the same concept with all the source code provided to you after each session that has a lab exercise.
Having said that, I will be first taking you to the level where you feel comfortable enough to start programming with Hibernate. We'll be starting everything from scratch, do the required installations, set up the development environment and learn how to configure logging, for you to be able to see and understand the events taking place at runtime. We'll also learn how to step through our code at runtime, for you to be able to see the behind-the-scene story of Java persistence with Hibernate. And only after that I'll ask you to start coding yourself. So don't you worry even if you know absolutely nothing about persisting Java objects with Hibernate.
If you're asking that what does persisting objects really mean? Don't you worry, we're going to cover even that. So, all you need to learn, enjoy and have a good experience with this course is the basic understanding of Java. That's it, I promise.
So, whether you're a beginner or already have some experience with Hibernate, we're going to cover all the grounds for you to be a confident and competent Hibernate programmer by the end of this course.
Everything we're going to learn in this course, we'll be doing it with examples. And we'll also be discussing the best practices to keep in mind when you're working on real world projects.
And if you're already good at Hibernate and JPA, you'll probably find this course to be useful for filling the gaps in your Hibernate and JPA knowledge.
Please drop me a message, in case you need me for anything to get the best out of this course for you.
And I might add more lectures to this course to make this course even better for you. So I'll appreciate your feedback, on how to improve this course for you.
And yes, to get the best out of this course, especially if you're a beginner, please don't jump through the lectures and complete the Lab Exercise of the previous lecture, before moving on to the next one.
And all the video lectures/sessions are in 16:9 HD, so please watch them in HD.
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: About this Course|
|Section 2: Understanding object/relational persistence|
Object Model and Relational Model
Object Relational Impedance MismatchPreview
Object Relational Mapping
Installing Eclipse IDE
Lab - Object Relational Mapping
Lab Exercise - Object Relational Mapping
|Section 3: Getting Started with Hibernate and JPA Annotations|
What is Hibernate
Hello World with Hibernate and JPA Annotations
Lab - Hello World with Hibernate and JPA Annotations
Lab Exercise - Hello World with Hibernate and JPA Annotations
Lab Exercise - Logging
Lab Exercise - Manipulating Objects
|Section 4: Mapping Concepts|
Aggregation and Composition
Entities and Value TypesPreview
Lab Exercise - Component Mapping
Lab Exercise - Mapping Associations
Lab Exercise - Cascades
Lab Exercise - One-To-Many Relationship
Lab Exercise - One-To-One Relationship
Lab Exercise - Many-To-Many Relationship
|Section 5: Getting Started with JPA|
What is JPA
Hibernate as JPA Provider
Lab Exercise - Hibernate as JPA Provider
Working with Objects
Lab Exercise - Working with Objects
Lab Exercise - Caching Objects
Lab Exercise - Lazy Fetching
Equals and HashCode
Lab Exercise - Equals and HashCode
Lab Exercise - Query Language
Inheritance Mapping and Polymorphic Queries
Lab Exercise - Inheritance Mapping and Polymorphic Queries
N + 1 Selects Problem
Lab Exercise - N + 1 Selects Problem
Lab Exercise - Batch Fetching
Merging Detached Objects
Lab Exercise - Merging Detached Objects
Optimistic Locking and Versioning
Lab - Optimistic Locking and Versioning
Lab Exercise - Optimistic Locking and Versioning
Lab Exercise - Isolation Rules
Caching and Object Identity
Lab Exercise - Caching and Object Identity
Second Level Caching
Lab Exercise - Second Level Caching
|Section 6: Best Practices|
I am a Bachelor of Technology (B.Tech) from Indian Institute of Technology (IIT) with around 9 years of application development experience (as of April, 2016). I have been developing applications of various complexities using Java-based technologies and frameworks such as Java/JavaEE, Spring, Spring MVC, Spring WebFlow, Spring Security, Portlet, Spring Portlet MVC, Struts, Hibernate, DWR, Lucene, Android, MEAN stack and Hadoop.
Besides being a trainer at MavenEdge, I am also a working Software Consultant. I've also been a corporate trainer on Java technologies and frameworks.
I've worked on Tomcat, Glassfish, Liferay Portal, Jenkins for application development, deployment and release management.
I've worked more on Maven than Ant. And in the world of relational database management systems, I've worked mostly on MySQL.
For test driving my code I've used JUnit, EasyMock, Mockito frameworks.
I've worked on projects on Android and MEAN stack. I've also been the Architect for some of the projects I've worked on.
Currently, I am working on Hadoop projects.