Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Hibernate - Association many-to-one [ Divers / Général ] (LordBob)

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é 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 <java> IOException cannot be resolved to a type [ par domxaline ] Bonjour, package sdz1; public class Lire { // Cette fonction permet de saisir au clavier une variable de type String public static String chaine() { S votre avis sur la classe metier de service web [ par sqlserv ] Bonjour,je suis en train de faire un service web j'ai cree une clasee qui contient des attributs et deux methodes j'appel cette classe capteur j'ai un DESIGN PATTERN FACADE [ par SOUSSOUB3GGG ] Bonjour à tous, En fait j'ai essayé de faire l'implémentation de design pattern façade . Je l'ai met comme un singleton : Code : public class Facade Arbre de decision:JTree non affiché!!svp aidez moi [ par lucioamine ] J'ai essayé sans cesse de pouvoir afficher le Jtree mais j'arrive pas.J'utilise l'algorithme ID3 de Quilan. Mon projet contient 5 classes: -main -Tabl Recupérer le nom d'un objet? [ par bibe ] Salut,j'ai une classe qui implemente KeyListener,j'ai pleins de "Choice()", sur les quels je met addKeyListener(this), après init() je met:public void Probleme de tableaux. [ par canvin ] Bonojour,Voici mon problème. j'ai fait une classe tableaux avec un constructeur. : public class Tableau{ private int tab[]; pu Instruction : system.out.println [ par BSide ] Bonjour,voici un exemple de code (je débute) qui me pose des problèmes :import java.util.*;import java.math.*;import java.lang.*;import java pb avec 'if ( (row>>1)<<1 == row )' [ par kobee12 ] Salut a tous.J'ai une fonction isCellEditable pour l'edition des tables :DefaultTableModel df = new DefaultTableModel() { public bool


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.