Advanced Hibernate Workshop
8.-10.12.2020 - Lindner Congress Hotel Düsseldorf (Germany)
Start implementing your persistence layer with ease and confidence!
Lead Developer for
Thorben has been part of a group of community experts for a long time, helping Hibernate users via his blog posts, articles and various forums. He has a lot of great Hibernate insights to share.
VP Product Development at Bravado Health
Thorben demonstrated his mastery of Hibernate and also showed he is an efficient programmer as well.
CEO at Data Geekery,
Thorben not only excels with his knowledge about modern JPA API usage – he also consistently stresses the importance of knowing the underlying SQL technology.
Stop Copying Random Code Snippets And Finally Create Complex Mappings With Ease And Confidence!
Lots of developers struggle to implement complex mappings with Hibernate. They copy code snippets from Stack Overflow without knowing what the code actually does, hoping that it solves their mapping issues. They work overtime and miss deadlines because they can’t get a feature to work and bugs start piling up.
What if I told you that this doesn't have to be the case?
What if I told you that Hibernate makes the implementation of complex persistence layers quick and easy?
What if I told you that knowing Hibernate's advanced features and their side effects is the key to working on interesting tasks and being appreciated by your manager and team members as a true expert and at the same time, allowing you to spend your evenings and weekends with your friends and family?
For me, that has been the story of my career. My Hibernate expertise was one of the building blocks of my corporate career and sharing this knowledge is now the basis of my freelance business.
And I created the Advanced Hibernate Workshop to share that knowledge with you.
Using Hibernate In The Wrong Way Creates More Problems Than It Solves
What most developers do, when they have to implement complex requirements with Hibernate, is they copy code snippets from Stack Overflow or implement workarounds in their business code. But for most of them, none of that works.
And what happens if you just do nothing? If you just keep doing what you’ve been doing?
You will pile up more and more problems hidden in your persistence layer.
You will spend more and more time fixing bugs and fighting inefficient, overly complex mappings and business logic instead of working on interesting new features.
In the end, you will be stuck in a rut, working long evenings and weekends while your managers complain about the bad quality of your code and the long development cycles.
How I Learned To Use Hibernate The Right Way
I tried the same approach as you did. I copied code snippets from Stack Overflow and blog articles, only to find that they didn’t work in my project, or that they caused other problems not mentioned in the articles.
The situation was frustrating, and I recognized that this approach wasn't working.
You need to really understand Hibernate, with its complex features and their side effects, so that you can choose the right one for your application. Otherwise, each decision comes down to pure luck. To make it even worse, you often need to wait for your users to use your changes before you know if you made the right decision or whether it caused side effects you didn't find on your test system.
Years ago, I got fed up with this needless guessing game. I knew that other teams were using Hibernate with huge success. There had to be a better way.
Stop Guessing, Make Educated Decisions!
I started to learn how Hibernate’s advanced features work so that I could use them correctly.
Instead of copying random code snippets, I started to dive deeper and put a lot of effort into learning as much as I could about Hibernate. I read the documentation, the JPA specification and various books, I participated in online and offline discussions and tried lots of things myself.
After a while, all the previously disjointed bits of knowledge and understanding began to form a complete picture. One in which the different features began to work together and in which the subtle comments I found in some articles started to make sense:
Nowadays, I use the same knowledge to help teams all over the world as a freelance consultant, coach, and trainer. It’s always amazing to see how a better understanding of Hibernate can improve your productivity and get you one step closer to an enjoyable and successful career.
It Worked For These People, And It Will Work For You
Based on the insight I gained, I began to choose the optimal Hibernate feature for my use cases, to implement them with ease and enjoyment and to get recognition for my work.
But don't just take my word for it. Here is what other people say:
We have included it in our standard training library
Using the more advanced parts of object relational mapping, like dealing with complex inheritance structures, has never been easy.
Thorben explains them in his Advanced Hibernate Workshop in an easy-to-understand series of lessons and exercises. Implementing complex mapping structures is a breeze after this.
We have included it in our standard training library for new developers.
Stephan Knitelius // Senior Consultant
Finally, I learned how to use criteria queries
Great hands-on workshop about Hibernate's advanced features by Thorben Janssen.
Finally, I have learned how to use criteria queries and stored procedures with Hibernate.
Gregor Karl Frey // Chief Development Architect at SAP
Great combination of lectures, example projects and exercises
The training course provides a great combination of lectures, slides, example projects with JUnit tests and exercises with solutions.
The Advanced Hibernate Workshop helped me to understand Hibernate much better and I recommend it to everyone who is using Hibernate.
Jean-Claude Brantschen // Software Engineer
Now It’s Your Turn
When you enroll in the Advanced Hibernate Workshop, we will meet at the Lindner Congress Hotel in Düsseldorf on December 8th-10th, 2020. It's close to Düsseldorf Airport (DUS), which offers lots of non-stop flights to and from most bigger European airports.
I will teach you all you need to know about Hibernate's advanced features so that you can
You also get lifetime access to my Advanced Hibernate Online Training, which is the online version of the workshop. So, whenever you are not exactly sure how to use one of the features I showed you during the workshop, you can watch the corresponding video. This gives you the best of both worlds. You get:
The Advanced Hibernate Workshop consists of 10 modules with 33 lectures and example projects and exercises that show you how to use Hibernate's advanced features to implement complex requirements.
Learn about advanced mapping concepts for handling complex table models and legacy databases.
- Lecture 1: Relationships With Additional Attributes
- Lecture 2: Composite Primary Keys
- Lecture 3: Cascading
- Lecture 4: Generated Columns
- Lecture 5: Embeddable
- Lecture 6: Formula
- Lecture 7: Column Transformer
Understand JPA's and Hibernate's different inheritance strategies and when to use them.
- Lecture 10: Why Is Inheritance A Problem?
- Lecture 11: Mapped Superclass Strategy
- Lecture 12: Table Per Class
- Lecture 13: Single Table Strategy (Example Lecture)
- Lecture 14: Joined Strategy
- Lecture 15: Choose A Strategy
Create dynamic, type-safe queries at runtime with the Criteria API and JPA's Metamodel classes.
- Lecture 8: Criteria API
- Lecture 9: JPA Metamodel
Understand Hibernate's concurrency handling to avoid issues in production.
- Lecture 22: Introduction To Concurrency Management
- Lecture 23: Pessimistic Locking
- Lecture 24: Optimistic Locking
Load multiple entities in batches or by their natural ID with Hibernate's proprietary API's.
- Lecture 27: Load by natural key
- Lecture 28: Load by multiple IDs
Advanced Hibernate Workshop
8th-10th December 2020 (contact me for alternatives)
Example projects for all lectures
Practical exercises and solutions
Advanced Hibernate Online Training (Certification Class)
To enroll in the training, please fill out the form below. I will email you a formal quote and an invoice to secure your seat.
Please be aware that the workshop only takes place if the minimum number of participants signs up until August 30th, 2020. I will inform you as soon as we reached the required number of signups so that you can make your travel arrangements.
Here are answers to some frequently asked questions:
What version of Hibernate is this course be based on?
The code examples are based on Hibernate ORM 5 but you can also use most of the features with Hibernate 4.4 and 4.3.
What other technologies should I be familiar with?
You should be familiar with Java, of course ;-) and have at least some basic knowledge of Relational Database Management Systems (RDBMSs) and SQL.
Do I have to have any experience with Hibernate ORM?
Yes, you need to be familiar with basic Hibernate concepts and annotations. This course will focus on advanced features and will not provide a basic introduction to Hibernate ORM.
Didn't find the answer you're looking for?
Let's talk about it. Please send me an email to firstname.lastname@example.org.