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

JPA Java Discussion :

Requête qui récupére une liste d'objet trop lente


Sujet :

JPA Java

  1. #1
    Membre du Club
    Architecte de système d’information
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 67
    Points
    67
    Par défaut Requête qui récupére une liste d'objet trop lente
    Bonjour,


    J'utilise JPA/hibernate 3 , et j'ai une requête qui prends 20 secondes pour récupérer 100 000 (cent miles enregistrement) d'une table (10 colonnes)
    alors que quand j'exécute la requête générée par hibernate directement dans la base, le resultat est instantané.
    je voudrais savoir est ce qu'il y a moyen d'optimiser cette requête?


    Merci d'avancce

    ci-aprés les bouts de code utilisés


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    	public class JPAUtil {
     
        private static final EntityManagerFactory emFactory;
     
        static {
            try {
                emFactory = Persistence.createEntityManagerFactory("org.hibernate.events.jpa");
            }catch(Throwable ex){
                System.err.println("Cannot create EntityManagerFactory.");
                throw new ExceptionInInitializerError(ex);
            }
        }
     
        public static EntityManager createEntityManager() {
            return emFactory.createEntityManager();
        }
     
        public static void close(){
            emFactory.close();
        }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
    	EntityManager em = JPAUtil.createEntityManager();
     
    	  String myQuery= " from " + MyObject.class.getName();
    	myQuery= myQuery+ " where";
    	myQuery= myQuery+ "  myDate= :date";
     
    	 Query query= em.createQuery(myQuery);
     
     
     
    	query.setParameter("myDate", new Date())
     
    	 list= query.getResultList();

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    @Entity
    @Table(name = "My_TABLE")
    public class MyObject.class.getName{
     
     
    	@Id
    	@Column(name = "ID_COL")
    	private Long sequenceId;
     
    	@Column(name = "My_COLUMN2")
    	private String aseID;
    .
    .
    .
     
     
    }

  2. #2
    Membre du Club
    Architecte de système d’information
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 67
    Points
    67
    Par défaut
    Bonjour,

    aucune idée? en faut ce qui m'est important est de savoir est ce qu'un tel temps de réponse (18 secondes environ pour 100 000 enregistrements) est normal ou pas, sachant qu'avec 1000 enregistrements ar exzemple je suis à 390 ms.

    Merci pour votre aide.

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/04/2013, 14h45
  2. Réponses: 3
    Dernier message: 19/07/2010, 08h42
  3. methode serveur qui retourne une liste d'objet
    Par harbi dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 01/12/2008, 09h11
  4. Requête qui renvoie une liste de données
    Par fougna dans le forum Langage SQL
    Réponses: 5
    Dernier message: 02/08/2007, 12h05
  5. methode qui retourne une liste d'objets du meme type
    Par anoukhan dans le forum Oracle
    Réponses: 8
    Dernier message: 12/01/2006, 18h38

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