- Lidar diretamente com HQL não é tão legal. Você pode querer pesquisar jOOQ ou Querydsl para ajudá-lo a criar consultas de tipo seguro.
- Para sua conversão JSON, você pode, por exemplo, pesquisar esta resposta aqui ou crie uma classe de encapsulamento, que mapeie suas entidades de categoria com os eventos associados e use um dos muitos tutoriais disponíveis, como isto .