There are many reasons why one might opt-out of the mainstream Hibernate path. A few that come to mind are complexity reduction for simple projects, composite keys, back-end persistence and business rules such as those written in PL/SQL in Oracle, you don’t like constraints, or just have no more hair left to pull. There are a lot of other reasons that are likely to spark a Bud Lite battle:
Tastes great! Less filling!
Truth is, I never embraced ORM-based patterns on personal projects for ideological reasons which I won’t go into, but writing directly to Java’s JDBC layer sux far worse than choking on those ideals. So, some years ago I coded up an alternative and have since added JPA-ease of use to compliment it. While not published yet, I have made a preview of the jdbc.blue java library.
Fellow coders can have a look and comment at: https://gitlab.montehansen.com/monte/blue