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

Langage Java Discussion :

[BDD] Rapidité par rapport à des méthodes


Sujet :

Langage Java

  1. #1
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut [BDD] Rapidité par rapport à des méthodes
    Bonsoir a tous,
    Voilà, j'ai un projet en cours qui se sert énormément des connections à une BDD, aussi bien avec des requête SELECT,INSERT,DELETE ou UPDATE.

    Je me pose des questions au niveau de la rapidité des réponses.
    En gros vaut-il mieux creer des méthodes spécifiques à chaque demande du programme(donc beaucoup de méthodes) ou bien mieux vaut-il creer des methodes gloables?c'est à dire une unique méthode nommée INSERT qui va s'occuper de toute les demandes INSERT du soft et qui va donc avoir besoin de pas mal de parametres?(idem pour SELECT,DELETE,UPDATE).

    La première solution demande plus de code mais peut-être est-elle plus rapide vu qu'elle est spécifique à une demande du soft.

    Voilà j'espére que je ne me suis pas trop mal expliqué
    Merci d'avance.

  2. #2
    Membre émérite
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Par défaut
    pourquoi tu utilise pas un framework comme hibernate?

  3. #3
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Bah en fait je ne connais pas trop hibernate, je sais que c'est au sujet des classes persistantes(je crois) et donc je ne vois pas trop à quoi ça me servirais et surtout comment m'en servir(même si je peux toujours apprendre) mais est-ce vraiment indispensable dans mon cas?

  4. #4
    Membre Expert
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Par défaut
    Le mieux serait de faire travailler au maximum ta base de données et ceci avec des procédures stockées.


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  5. #5
    Membre émérite
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Par défaut
    rien n'es jamais indispensable ;-)

    tu peux meme te passer de jdbc et essayer de comprendre comment sont stocker les fichiers de ta base de donnee et essayer de mettre des donnes direct dedans.

    maintenant reflechis deux secondes;
    dans combien d'application on utilise des base de donnee?
    60% des application? 70%?

    tu pense pas qu'avec un taux pareil des outils existe pour te faciliter les requete vers ta base de donnes?

    regarde hibernate.org et lis un peu.
    Tu comprendra l'utilite.

  6. #6
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Le mieux serait de faire travailler au maximum ta base de données et ceci avec des procédures stockées.
    Désolé mais je ne comprend pas trop "procédures stcokées", je prépare mes requétes?

    regarde hibernate.org et lis un peu.
    Vais allez y faire un tour

  7. #7
    Membre émérite
    Avatar de bbclone
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 537
    Par défaut
    une procedure stockee c'est comme une fonction mais stockee directement dans la base de donnees.
    par exemple avec oracle tu peux faire ca en pl/sql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CREATE OR REPLACE PROCEDURE PROC_NAME(param)  -- FUNCTION existe aussi
    AS 
       // ICI TON TRAITEMENT AVEC DES IF, SELECT, INSERT....
    END;

    Beaucoup dise que c'es bien de laisser gerer la base de donnes un maximum de chose mais au niveau de la base de donnee c'est du relationel et pas de l'objet

    ca a des avantages mais aussi (beaucoup) d'inconvenient.

    et pour appeler ces procedure tu peut utiliser des CallableStatement.

  8. #8
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Citation Envoyé par nicotine002
    Je me pose des questions au niveau de la rapidité des réponses.
    En gros vaut-il mieux creer des méthodes spécifiques à chaque demande du programme(donc beaucoup de méthodes) ou bien mieux vaut-il creer des methodes gloables?
    Les PreparedStatement sont la meilleur façon de gagner en performance (si des mêmes requêtes vont être exécutées à maintes reprises mais avec des valeurs/paramètres différents) ; voir la JDBC .

    Et en plus tu peux coupler ça avec une approche de développement générique, du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public ResultSet maFonctionPourTousLesSelects(PreparedStatement maRequeteDejaCompilee,Object[] mesValeursParametres) {
      ResultSet lignesRenvoyees;
      // todo cf. faq
      return lignesRenvoyees;
    }
     
    public int maFonctionPourTousLesInsertsEtUpdatesEtDeletes(PreparedStatement maRequeteDejaCompilee,Object[] mesValeursParametres) {
      int nombreDeLignesAffectees;
      // todo cf. faq
      return nombreDeLignesAffectees
    }

  9. #9
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Ok merci pour toutes vos réponses je vais regarder tout ca, j'ai oublié de préciser que je travaille actuellement sur une BD Embarquée.

  10. #10
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Voilà j'ai à peu prés tout essayé, bon biensûr je n'ai pas pu voir tout les avantages et aspects d'hibernate mais je pense que je vais faire tourner l'application avec des PreparedStatement(qu'elle contenait déjà mais pas assez je pense) et quelques procédures stockées(je vais encore me renseigner un peu à ce sujet).
    Donc voilà merci à tous pour vos réponses et bonne journées

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 18
    Dernier message: 24/11/2008, 19h26
  2. Demande conseil par rapport à une méthode de programmation
    Par jenesaisrien dans le forum Langage
    Réponses: 9
    Dernier message: 20/09/2007, 11h14
  3. requête de validation par rapport à des dates
    Par zougna dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 14/04/2007, 14h45
  4. Réponses: 9
    Dernier message: 04/01/2007, 12h58
  5. Html : liste de choix par rapport à des choix
    Par Djwaves dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/03/2006, 17h52

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