It has been 2 busy months since the last Thoughts on Java Report. During that time, I celebrated my 1 year anniversary of becoming a freelancer, the Thoughts on Java YouTube channel reached 2000 subscribers, and I spoke at 6 events in 3 different countries. I had a great time 🙂
In total, I gave a 2-day workshop, 3 1-day workshops, and 4 regular conference talks. It was a lot of fun, and the questions and discussions that I had at the conferences provided great inspiration for new blog posts and videos.
But it’s also good to be home and to stay here for a few weeks. The conferences required a lot of time and energy. Due to this, I’m behind my schedule for the Hibernate for Beginners training, and I want to reopen the doors for my Advanced Hibernate Online Training and Hibernate Performance Tuning Online Training, very soon.
Posts & Videos
2 months is a lot of time to publish videos and blog posts, even so, I spend a huge part of my time rehearsing, traveling and speaking. Overall, I published 12 videos and 9 blog posts. That’s not exactly what I had hoped for but still a pretty good number.
I’m very happy about the growth of the Thoughts on Java YouTube channel. More than 2100 developer are subscribed to the channel. Sure, that’s still a small channel, but at the beginning of this year, I didn’t expect to get that many subscribers in just a few months. Thank you to everyone who enjoys my videos and subscribed to the channel!
But now, let’s take a look at the videos.
As always, the Hibernate Tip videos present a quick and easy solution for a common development task. In the last 2 months, I showed you how to bootstrap Hibernate with Spring Boot, override the primary key generation strategy, use a timestamp for versioning and optimistic locking, persist a List of Strings as an ElementCollection, map an association to a java.util.Map, delete child entities from a many-to-one association and select a specific subclass from an inheritance hierarchy
In the tutorial videos, I get into more details. So, the videos are a little bit longer than the short Hibernate Tips and bring you a more in-depth explanation of a concept or feature.
In the last 2 months, I explained Introducing @Repeatable Annotations, generate UUIDs as primary keys, 5 Things You Need To Know When Using Hibernate With MySQL, JPA 2.2’s new getResultStream() method and how you should NOT use it and extends Envers’ standard revision
Since the last Thoughts on Java Report in September, I wrote 4 tutorial and 5 tip posts about different, persistence-related topics.
In Monday’s tutorial posts, I had a look at JPA 2.2’s getResultStream method and how you should not use, explained the differences between the persist, save, merge and update methods and provided a 2-part introduction to the database migration tool Flyway.
- JPA 2.2’s new getResultStream() method and how you should NOT use it
- Getting Started with Flyway and Version-Based Database Migration
- What’s the difference between persist, save, merge and update? Which one should you use?
- How to Use Java-based Migrations and Callbacks With Flyway
And the Hibernate Tips posts show you how you can escape table and column names, model associations that don’t reference primary key columns, remove entities from the persistence context before doing bulk operations, call a PostgreSQL function, and map an entity attribute to an Optional
- Hibernate Tips: How to escape table and column names
- Hibernate Tips: How to model associations that don’t reference primary key columns
- Hibernate Tips: How to remove entities from the persistence context before doing bulk operations
- Hibernate Tips: How to call a PostgreSQL function
- Hibernate Tips: How to map an entity attribute to an Optional
What is planned for November
If you don’t speak German or don’t want to travel to Munich, you should take a look at my Advanced Hibernate Online Training and Hibernate Performance Tuning Online Training. I will start 2 new classes very soon. You can join the waitlist now, and I will send you a notification as soon as I open the registration.
And I’m still working on my new Hibernate beginners online training. In the last 2 months, I didn’t make the progress that I had hoped for. So, it’s time to put in some extra energy and to create enough content to announce the beta group.
OK, that’s all for now. Let’s get back to work. I need to finish Monday’s post about customizing Hibernate Envers 😉