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

Accès aux données Discussion :

IBATIS et lazyLoading


Sujet :

Accès aux données

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 15
    Points : 13
    Points
    13
    Par défaut IBATIS et lazyLoading
    Bonjour tout le monde,

    je coince depuis un certain temps sur le lazyloading via le framework Ibatis
    J'ai essayé de faire de google mon ami, mais je n'ai pas trouvé mon bonheur.
    J'aimerais savoir quelle est l'option exacte à mettre au niveau de mon mapping pour faire du lazy loading.
    PAr défaut j'ai vu que on a
    lazyloadEnable = true

    au niveau du mapping, j'ai fait quelque chose dans ce genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <resultMap id="ClientResult" class="Client">
      <result property="Client" column="ID_CLIENT" /> 
      <result property="Address" resultMapping="client.AddressResult"  lazyload = "true"/> 
    </resultmap>
    Le lazyload ne fonctionne pas.
    En effet, lorsque j'ai une centaine d'adresse dans ma table no soucy, mais en montant à 7000 enregistrement, je plante mon appli et je suis sur de ne pas faire de lazyload (pas de trace de lazyload dans log4net .

    Est-ce quelqu'un aurait une idée ?? Ou alors a déjà eu ce problème?

    Merci d'avance

    Rikko

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 273
    Points : 2 202
    Points
    2 202
    Par défaut
    Citation Envoyé par rikko57 Voir le message
    Bonjour tout le monde,

    je coince depuis un certain temps sur le lazyloading via le framework Ibatis
    J'ai essayé de faire de google mon ami, mais je n'ai pas trouvé mon bonheur.
    J'aimerais savoir quelle est l'option exacte à mettre au niveau de mon mapping pour faire du lazy loading.
    PAr défaut j'ai vu que on a
    lazyloadEnable = true

    au niveau du mapping, j'ai fait quelque chose dans ce genre

    <resultMap id="ClientResult" class="Client">
    <result property="Client" column="ID_CLIENT" />
    <result property="Address" resultMapping="client.AddressResult" lazyload = "true"/>
    </resultmap>

    Le lazyload ne fonctionne pas.
    En effet, lorsque j'ai une centaine d'adresse dans ma table no soucy, mais en montant à 7000 enregistrement, je plante mon appli et je suis sur de ne pas faire de lazyload (pas de trace de lazyload dans log4net .

    Est-ce quelqu'un aurait une idée ?? Ou alors a déjà eu ce problème?

    Merci d'avance

    Rikko
    Et tu as la trace de l'erreur ? En même temps le développement est arrêté sur la version .Net, donc tu as peut être une erreur car il y avait une erreur de proxy sur IBatis .Net fut une époque :


    Je suppose là que toutes les propriétés sont virtuelles ? Comme ce sont des proxys castle, clientResult et AddressResult doivent avoir des membres virtuels (où du moins ceux mappés) de sorte que castle puisse créer un proxy.

    Et sinon, je ne sais plus...

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    tu aurais un exemple ??
    Merci d'avance...
    (j'avai pas compris tout de suite...)

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    OK, un peu vaste ma question.
    le truc c'est que j'ai mis les propriétées de ma classe adresse en virtuel et que je ne vois rien de mieux...

    un truc dans le genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    [DataContract]
        public class Adresse
        {
            public virtual string rue { get; set; }
            public virtual string codePostal { get; set; }
            public virtual string ville { get; set; }
            public virtual string pays { get; set; }
    }
    Est-ce que j'ai oublié quelque chose ? Celles de client doivent-elles être virtuelles également ?
    Pour info, je n'ai pas d'erreur, je ne vois simplement pas de trace de lazyload dans log4net qui est configuré pour l'afficher

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Points : 1 561
    Points
    1 561
    Par défaut
    iBatis est un mappeur uniquement, qui plus est, dont le développement et la maintenance sont arrêtés du moins pour .NET.

    Est ce réellement nécessaire pour toi d'utiliser iBatis ? car sans évolution ni maintenance corrective, on ne trouve déjà plus aussi facilement qu'avant les runtimes, et les documentations sont pour le moins laconiques et quasi-inexistantes et cela va aller en empirant...

    Peut-être serait-il plus judicieux de passer par des ORM tels que Entity Framework ou NHibernate (il y en a d'autres, mais bon...)

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Et non, je n'ai pas le choix...
    Il faut que je trouve
    Et effectivement, je trouve la documentation plutôt light

Discussions similaires

  1. [iBatis DAO] Plusieurs contexte
    Par bslota dans le forum Persistance des données
    Réponses: 1
    Dernier message: 21/12/2005, 18h49
  2. [MAPPING O/R] - Hibernate Vs Ibatis
    Par spidetra dans le forum Hibernate
    Réponses: 3
    Dernier message: 08/12/2005, 13h52
  3. [iBatis] Logger les requètes SQL
    Par bslota dans le forum Persistance des données
    Réponses: 2
    Dernier message: 25/11/2005, 14h29
  4. [Hibernate][Ibatis] Problème de performance..
    Par Saloucious dans le forum Hibernate
    Réponses: 2
    Dernier message: 29/10/2005, 13h21
  5. [Data] Développement avec la framework spring et ibatis
    Par ujoodha dans le forum Spring
    Réponses: 1
    Dernier message: 07/03/2005, 13h20

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