Hibernate ist natürlich der defacto-Standard in Java. Wenn Ihre Klassen nicht also komplex sind, tut es vielleicht auch SimpleORM. Hier ein Link.
Wir bevorzugen inzwischen wieder direktes JDBC und implementieren lieber einige Logik in der Datenbank (z.B. Tabellenwertfunktionen im SQL Server). Das notwendige Mapping wird in der Javaklasse verpackt und ruft ggf. andere Klassen per Delegation auf.