Bonjour,
Je débute sous Hibernate et je n'arrive pas à faire un truc, ni à savoir si c'est possible.
Je cherche a afficher un tableau dont le contenu provient des données de différentes tables et non pas d'une table unique.
Le souci est que je ne sais pas trop comment créer le fichier de mapping étant donné que l'ID devrait provenir de champs identique sur 3 tables différentes donc ce ne peut être un Id autogénéré et les données proviennent de différentes tables. Pour moi hibernate, c'est le mapping d'une table à une classe or je n'ai pas de table spécifique. Donc je pensais passer par des many-to-one afin de récupérer ces données. Je ne sais pas si je pars dans le bon sens de ce que j'essaie de faire.
Pour le moment ça donnerait ça ce que j'ai fait :
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="INTetatACAV.etatACAV.metier.entite">
<class name="MIFetatACAV">
<id name="id_support" column="ID_ASUPPORT">
<generator class="increment"/>
</id>
<many-to-one name="idsupport" column="ID_SUPPORT"
class="ACAV_ACTIF" not-null="false"></many-to-one>
<many-to-one name="idsupport" column="ID_SUPPORT"
class="ACAV_PASSIF" not-null="false"></many-to-one>
<many-to-one name="idsupport" column="ID_SUPPORT"
class="ACAV_ATTENTE" not-null="false"></many-to-one>
<many-to-one name="valeur" column="VALEUR"
class="VL" not-null="false"></many-to-one>
<many-to-one name="libellesupportcourt" column="LIBELLE_SUPPORT_COURT"
class="SUPPORT" not-null="false"></many-to-one>
<many-to-one name="montantacava" column="MONTANT_ACAV_A"
class="ACAV_ACTIF" not-null="false"></many-to-one>
<many-to-one name="montantacavp" column="MONTANT_ACAV_P"
class="ACAV_PASSIF" not-null="false"></many-to-one>
<many-to-one name="montantacavattente" column="MONTANT_ACAV_ATTENTE"
class="ACAV_ATTENTE" not-null="false"></many-to-one>
<many-to-one name="idacavattente" column="ID_ACAV_ATTENTE"
class="FLUX_ACAV" not-null="false"></many-to-one>
<many-to-one name="idflux" column="ID_FLUX"
class="FLUX_ACAV" not-null="false"></many-to-one>
</class>
</hibernate-mapping>
Merci à ceux qui pourront m'apporter une lumière à mon problème :mouarf:
Et si je passe par une vue que j'appelle ETAT_ACAV avec cette requete :
Code:
SELECT AA.ID_SUPPORT ,
VALEUR ,
LIBELLE_COURT ,
AA.MONTANT_ACAV_A ,
MONTANT_ACAV_P ,
MONTANT_ACAV_ATTENTE ,
FA.ID_ACAV_ATTENTE ,
FA.ID_FLUX
FROM
VL ,
MIF_SUPPORT ,
ACAV_ACTIF AA ,
ACAV_PASSIF ,
ACAV_ATTENTE ,
FLUX_ACAV FA;
Comment je dois configurer mon mapping? a savoir quelle id je dois prendre du coup vu qu'une vue n'a pas d'id contraitement à une table.
Je suis dans le floue.
Cdt