You have the following arguments against Hibernate listed in your WIki : 1) Hibernate provides no code generation. You have to do that yourself. 2) Hibernate adds a lot of complexity between your code and the database. You don't understand that and you don't need that. 3) Hibernate is huge. So many additional classes in your app. 4) Hibernate provides no typesafety. You have to write HQL, yet another SQL language.
Concerning points 1 and 4, they are covered by JPA 2 Criteria, which is supported by Hibernate. Concerning the arguments for point 2, they are not very convincing without going into detail. Maybe better talk about SQL vs ORM. Concerning point 3. There are also lightweight JPA ORMs like EclipseLink around. Just to be fair. If you want to convert JPA users to jOOQ, you might need more convincing arguments. Here is a link with an ORM vs SQL discussion : http://stackoverflow.com/questions/494816/using-an-orm-or-plain-sql Positioning jOOQ as an ORM makes this a little bit difficult. As jOOQ doesn't seem to be domain model driven, ORM might be a wrong label. And here is something I wrote on StackOverflow : http://stackoverflow.com/questions/4573975/jpa-vs-spring-jdbctemplate/4574118#4574118 Also it doesn't need to be Hibernate or jOOQ, using both will make also sense in many cases. We are for example using Querydsl JPA + SQL together some projects. Just my two cents. ;)
