begin process at 2010 02 10 07:37:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Hibernate - Association many-to-one


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Hibernate - Association many-to-one

mardi 4 novembre 2008 à 23:13:04 | Hibernate - Association many-to-one

LordBob

Membre Club
Bonsoir a tous,

voila je me décide à poster un message car j'ai un problème avec Hibernate et je n'arrive pas à trouver ce qui ne va pas malgrès mes nombreuses recherche sur Internet et mes parcours de Forum (bien que j'ai trouvé des infos).

En fait j'aimerais que vous m'aidier à trouver ce qui ne va pas. En fait tout simplement j'ai deux tables, une table REGION et une table DEPARTEMENT qui se compose comme ceci:
[CODE]CREATE TABLE tr_region(
  id_pk SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
  nom VARCHAR(50) NOT NULL,
  PRIMARY KEY(id_pk)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE tr_departement(
  id_pk VARCHAR(3) NOT NULL,
  nom VARCHAR(50) NOT NULL,
  region_id_fk SMALLINT UNSIGNED NOT NULL,
  PRIMARY KEY(id_pk),
  FOREIGN KEY(region_id_fk) REFERENCES tr_region(id_pk)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;[/CODE]

J'ai ainsi créé les fichiers de mapping suivant:
[CODE][B]departement.hbm.xml[/B]
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping
    PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    <class name="com.xxx.domain.model.Departement" table="tr_departement" lazy="false">
        <id name="id" column="id_pk" />
       
        <property name="nom" column="nom" not-null="true" />
        <many-to-one name="region" column="region_id_fk" not-null="true" class="com.xxx.domain.model.Region" />
    </class>
</hibernate-mapping>[/CODE]

[CODE][B]region.hbm.xml:[/B]
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping
    PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    <class name="com.xxx.domain.model.Region" table="tr_region" lazy="false">
        <id name="id" column="id_pk" />
       
        <property name="nom" column="nom" not-null="true" />
    </class>
</hibernate-mapping>[/CODE]

les classes de mapping:
[CODE]
public class Departement implements Serializable, Comparable<Departement>
{
    private static final long serialVersionUID = 562737487953277633L;
    private String id;
    private String nom;
    private Region region;

    public Departement()
    {
        id = null;
        nom = null;
        region = null;
    }
   
    public Departement(String id, String nom, Region region)
    {
        this.id = id;
        this.nom = nom;
        this.region = region;
    }

    public String getId()
    {
        return id;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getNom()
    {
        return nom;
    }

    public void setNom(String nom)
    {
        this.nom = nom;
    }

    public Region getRegion()
    {
        return region;
    }

    public void setRegion(Region region)
    {
        this.region = region;
    }
   
    @Override
    public boolean equals(Object o)
    {
        if(this == o)
            return true;
       
        if(!(o instanceof Departement))
            return false;
       
        final Departement dept = (Departement)o;
        if(!id.equals(dept.id))
            return false;
       
        return true;
    }
   
    @Override
    public int hashCode()
    {
        return id.hashCode();
    }
   
    public int compareTo(Departement that)
    {
        return this.getId().compareTo(that.getId());
    }
}
[/CODE]
[CODE]public class Region implements Serializable, Comparable<Region>
{
    private static final long serialVersionUID = -1420115862805756707L;
    private Long id;
    private String nom;

    public Region()
    {
        id = null;
        nom = null;
    }
   
    public Region(Long id, String nom)
    {
        this.id = id;
        this.nom = nom;
    }

    public Long getId()
    {
        return id;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public String getNom()
    {
        return nom;
    }

    public void setNom(String nom)
    {
        this.nom = nom;
    }
   
    @Override
    public boolean equals(Object o)


    {
        if(this == o)
            return true;
       
        if(!(o instanceof Region))
            return false;
       
        final Region region = (Region)o;
        if(!id.equals(region.id))
            return false;
       
        return true;
    }
   
    @Override
    public int hashCode()
    {
        return id.hashCode();
    }
   
    public int compareTo(Region that)
    {
        return this.getId().compareTo(that.getId());
    }
}
[/CODE]

et voila la requête que j'utilise:
[CODE]departements = session.createCriteria(Departement.class)
                            .addOrder(Order.asc("nom"))
                            .list();[/CODE]

mais en fait cette requête ne me retourne aucun résultat bien que ma table contienne des données et je n'arrive vraiment pas à trouver d'où vient mon erreur!

Pourriez-vous m'aider svp ?

Merci par avance.
Bob...
"Vaut mieux se taire et passer pour un con, que de l'ouvrir et ne laisser aucun doute sur le sujet..."
mercredi 5 novembre 2008 à 19:26:03 | Re : Hibernate - Association many-to-one

jiidou

Bonsoir,
c'est pas evident de donner un coup de main pour un tel code.il vaut mieux d'utiliser des System.out.print..
comme ça tu rattrappas l'erreur.

Bon courage



Cette discussion est classée dans : public, code, id, return, region


Répondre à ce message

Sujets en rapport avec ce message

probleme de retour dans une methode en java [ par sqlserv ] Bonjour,qui ce que  je doit mettre dans le type de retour de la methode getPersonne()pour avoir toutes les id et les nom de personneimport java.util.A execution des requettes sql sous java [ par nimont010 ] salut;j'essai d'executer une requette de mise a jours  avec le java mais ça genere une exeption au niveau du code java et renvoi une erreur pour la re Validation d'une formulaire [ par dalidali86 ] Bonjour , j'ai besoin dans mon traivail d'un formulaire à remplir par les clients par internet . Normalement , on doit vérifier l'existence ou non du EJB Stateless [ par hellboy530 ] Bonjour, j'ai besoin d'aide , j'ai un problème au niveau des ejb Stateless. (statefull a marché)[^^confus2] j'utilise : eclipe galileo + jboss v 4.0 demande d'aide svp, doit le rendre demain [ par nebilabd ] Bonjour voila les 4 classes que j'ai crée pour un TP en java: chainon.java [code=java] package tp3matrice; public class chainon { private Object info Problème Compilation java [ par auriks ] Bonjour, je travail sur un projet sous eclipse actuellement, Lorsque j'exécute le projet et que j'appel ma Vue sous eclipse il n'y as aucun problème, lecture d'un formulaire avec struts2 [ par mimounireda ] Salut tout le monde. J'ai un formulaire d'authentification que je dois recuperer dans mon application afin de faire le test. Le probleme que j'ai c'es probleme java urgent!! [ par mimmiz ] bonjour je dois rentre un projet java et je galère un peu(je n'ai que 1mois et demi de java derrière moi) ma class client a l'air de fonctionner du mo erreur sur le code huffman [ par lekludo ] bonjour a vousj'ai un probleme je suis débutant en java et j'ai un petit proget qui m'a été donné sur le code de huffman seulement lorsque j'exécute, probleme sur un projet java [ par mimmiz ] bonjour je dois rentre un projet java et je galère un peu(je n'ai que 1mois et demi de java derrière moi) ma class client a l'air de fonctionner du mo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales