This is my situation, I have two basic POJO\'s which I\'ve given a simple hibernate mapping :
Person - PersonId - Name - Books Book - Code - Descr
Should your query be on the person table instead of person_books?
session.createSQLQuery("select * from person") .addEntity("person", Person.class) .addJoin("book", "person.books") .list();