Requêtes dynamiques avec hibernate

J'ai une application dans laquelle j'ai besoin pour permettre aux utilisateurs finaux de créer des rapports ad hoc par la définition de leurs options par un certain type de l'assistant, dont le processus serait quelque chose comme:

1) User selects the table(s) he wants to query  (eg person, project, activities)
2) defines the list of fields he requires (eg name, email, projects, activity, activity info) 
3) supplies the filter criteria for the records to return (eg Person name, ongoing activities)

Je suis de l'utilisation d'hibernate avec base de données postgres avec plus de 100 tableaux. Bien sûr, je ne peux pas laisser l'utilisateur choisir l'une de ces tables, car ils n'ont pas de sens. Mais certains 10 tables principales (telles que celles ci-dessus).

J'ai donc besoin de conseils sur la façon de:

  1. Est-il possible et comment définir les jointures et les relations entre ces tables et leurs relations de façon dynamique?
  2. Si pas, (ou trop complexe), ce qui serait la meilleure façon de définir ces jointures et les chemins de base de données, puis permettre à l'utilisateur de seulement paramétrer des filtres?
  3. Obtenir des données provenant de plus d'une hibernation de l'objet et ensuite laisser l'utilisateur choisit les champs qu'il veut.

J'apprécie beaucoup tous les commentaires, si je n'ai pas d'expliquer la nécessité correctement s'il vous plaît écrire.

InformationsquelleAutor Julia | 2011-01-23