IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Persistance des données Java Discussion :

pb de conception hibernate / synchro des donnés


Sujet :

Persistance des données Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut pb de conception hibernate / synchro des donnés
    Bonjour,

    J'ai 2 "gros" problemes, mon application 3 classes:
    - Facture
    - Categorie
    - Articles

    1 Facture à N Catégorie
    1 Categorie à N Categorie et N Articles
    (donc la classe catégorie à 2 listes)

    Le 1er probleme est que lorsque l'instance d'une facture est chargé, il me met dans la collection catégorie de la classe facture TOUTES les catégories (parents et enfants alors que je ne veux que les parents)

    Le 2e probleme, est que lorsque je déplace dans mon model une categorie et que je fais sauvegarder, j'ai une erreur hibernate qui me dit que je ne peux supprimer une categorie qui va être sauvegardé ensuite.
    Je ne vois pas pourquoi il veut la supprimer puisqu'il devrait juste faire un update.

    Petite précision, je sauvegarde par à la volé, que lorsque le user appuis sur "save", cela fait un update de la facture.

    Merci à vous

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par DevForFun Voir le message
    Le 1er probleme est que lorsque l'instance d'une facture est chargé, il me met dans la collection catégorie de la classe facture TOUTES les catégories (parents et enfants alors que je ne veux que les parents)
    Il faut activer le lazy-loady sur le mapping categorie -> catégorie. Par défaut c'est activé, si ce n'est pas le cas, c'est que tu as ajouté une option explicite pour charger les sous catégorie immédiatement.


    Le 2e probleme, est que lorsque je déplace dans mon model une categorie et que je fais sauvegarder,
    Qu'est-ce que tu appelle "déplacer"? Hibernate ne connait que les update, les delete et les add. Model, ça correspond à quoi par rapport à tes trois classes?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut
    Merci pour la 1er réponse, pour le 2e point c'est vrai que je n'ai pas été très clair.
    Supposons qu'une facture à cette structure (je rappel que c'est une liste de categorie):
    - Categorie 1
    - sous-categorie 1A
    - sous-categorie 1B

    - Categorie 2
    - sous-categorie 2A
    - sous-categorie 2B

    et que je deplace "sous-categorie 2A" dans "Categorie 1", j'obtiens alors :
    - Categorie 1
    - sous-categorie 1A
    - sous-categorie 1B
    - sous-categorie 2A

    - Categorie 2
    - sous-categorie 2B

    A ce stade, quand je fais un update de "Facture" , j'ai une erreur comme quoi je ne peux supprimer un objet qui va etre resauvegardé ensuite.
    J'ai comme l'impression qu'hibernate cherche à faire :
    - delete sous-categorie 2B
    - insert sous-categorie 2B

    alors qu'il devrait, je pense, simplement faire un update.

    Avez vous une solution ?

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    il faut voir ton mapping pour en dire plus, il y a plein de manière de faire des relations 1 to n dans hibernate, suivant les besoins et donc autant de manière de les gérer. Il faudrait aussi que tu active le show_sql et que tu nous poste tes logs.

Discussions similaires

  1. [Struts / Hibernate] Récupération des données
    Par xoftob dans le forum Struts 1
    Réponses: 0
    Dernier message: 23/11/2012, 17h46
  2. [Debutant] Conception du traitement des données
    Par badack dans le forum JDBC
    Réponses: 6
    Dernier message: 04/01/2007, 15h13
  3. [Conception] Afficher des données en fonction du mois.
    Par fabrice88 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 05/06/2006, 10h31
  4. [Conception] Pb d insertion dans une BDD des données d un formulaire
    Par xtiand4 dans le forum PHP & Base de données
    Réponses: 16
    Dernier message: 02/06/2006, 18h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo