How do I do with HQL, many to many?

hibernate

Solution

Assuming the entity names are Book and Author and that Book has authors attribute:

select a.firstName, a.lastName from Book b join b.authors a where b.id = :id

Problem

Here is my database structure. Relation many to many. I want to make a selection of authors who have written the same book. With SQL, I did. How do I do with HQL? ``` Query query = session.createSQLQuery("SELECT FirstName, LastName FROM authors, books, author_book as ab WHERE ab.authorID=authors.authorID AND ab.bookID = books.bookID AND ab.bookID = :id"); query.setInteger("id", 1); List list = query.list(); Iterator<Object[]> iter = list.iterator(); while (iter.hasNext()) { Object[] obj = iter.next(); System.out.println(obj[0] + " " + obj[1]); } ```

Original source