As Raul mentioned, Roo makes use of JPA for its ORM needs. This allows for a nice abstraction giving you the choice between three JPA implementations: Hibernate, EclipseLink and OpenJPA. Now, if you want to create custom queries all you need to do is get hold of the EntityManager in your controller (or wherever you need it):
This should get it injected into any Spring managed component (or any Pojo marked with @Configurable.
private EntityManager entityManager;
There is some abstraction available in the JPA API to build standard queries for you but it is probably not as powerful compared to using Hibernate directly. We are hoping to convert to JPA 2 soon which should help on that.