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

JDBC Java Discussion :

[Conception] recherche rapide dans une base de données


Sujet :

JDBC Java

  1. #1
    Membre régulier
    Inscrit en
    Août 2005
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 159
    Points : 97
    Points
    97
    Par défaut [Conception] recherche rapide dans une base de données
    Je fais des soucis par rapport a une application web que je dois développer.
    Cette application devra etre accessible dans un intranet et a terme devra pouvoir etre utilise sur le reseau interne.
    Le probleme est qu'actuellement dans la l'entreprise ce ne sont que des pentium 2 avec au maximun 128 MO de ram.

    L'application consiste a une appli web de gestion des produits. La boite compte environ 5000 produits repertoriés et une des fonctionnalités de l'appli serait lorsqu'on entre les premieres lettres d'un produit que tous les produits s'affiche (par exemple dans un combo).

    J'envisageait les solutions suivantes:

    -charger tous les produits en memoire et lorsqu'on entre le debut je n'est qu'a selectionner les infos neccessaires. Le probleme c'est que cela est couteux en ressource memoire et je crains que par exemple pour des donnees grossissant toujours plus que ce ne soit une bonne soluce
    la deuxieme solution que j'enviseait, c'etait a chaque fois que que l'utilisateur entrait les produits que je lance une requete que contacte la base. Vous voulez bien que dans un environnement web, c'est a ecarter.

    Je laisse ouvert a vos solutions que je pense pourrons m'amener vers une plus bonne implementation

    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Points : 3 083
    Points
    3 083
    Par défaut
    Tu t'en fous des postes clients pour un intranet, c'est le serveur qui doit être puissant !!!
    Comment ça ? La réponse à ton problème n'est ni dans la faq, ni dans les tutos, ni dans sources ??? Etonnant...
    De la bonne manière de poser une question (et de répondre).
    Je ne fais pas de service par MP. Merci (...de lire les règles...).
    Ma page dvp.com

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 760
    Points : 626
    Points
    626
    Par défaut Re: recherche rapide dans une base de données (est ce possib
    Citation Envoyé par ouedmouss
    -charger tous les produits en memoire et lorsqu'on entre le debut je n'est qu'a selectionner les infos neccessaires. Le probleme c'est que cela est couteux en ressource memoire et je crains que par exemple pour des donnees grossissant toujours plus que ce ne soit une bonne soluce
    Je traduis : copier la base de donnée vers le client, je confirme c'est pas une solution.

    Citation Envoyé par ouedmouss
    la deuxieme solution que j'enviseait, c'etait a chaque fois que que l'utilisateur entrait les produits que je lance une requete que contacte la base.
    Cela me parait la bonne solution, mais le resultat n'est pas forcement enorme, cela depend la manière d'afficher, de plus tu dispose d'un environement reseau de bonne qualité si c'est un intranet.
    Tu peux demander les premières lettres, rechercher les produits commenceant par ces lettres lors de l'appui sur un bouton ou la touche entrée, forunir tous les titres des atricles trouvés. Les descriptions detaillées pouvant venir apres.

    Une question : tu souhaite utiliser une applet coté client?

  4. #4
    Membre habitué
    Inscrit en
    Janvier 2005
    Messages
    491
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 491
    Points : 172
    Points
    172
    Par défaut
    Les deux solutions que tu as cité sont possibles:
    - Si tu as pas beaucoup de produits, et si le nb de produit n'est pas sucéptible de trop grossir, tu les chargent directement en mémoire (utilise une classe singleton par exemple)
    - Si tu en as beaucoup je pense que tu as pas trop le choix, il faut consulter la BD à chaque fois... et ca ne pose pas de problème si ton serveur est puissant.

    Le tout bien sur dans l'hypothèse ou tu fait une appli serveur...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 94
    Points : 113
    Points
    113
    Par défaut
    Eh oui, cettte fonction était si simple à faire dans l'ancien testament (C/S)

    Regarde autour d'AJAX.

    Voici l'exemple très souvent cité, qui ressemble très fortement au besoin

    http://www.google.com/webhp?complete=1&hl=en

  6. #6
    Membre régulier
    Inscrit en
    Août 2005
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 159
    Points : 97
    Points
    97
    Par défaut
    j'ai testé l'exemple qu'on m'a envoyé sur google et je pense que coté temps de reponse c'est impec.
    Mais est ce que parcequ'il n'ya pas assez de temps?

    Je voudrais aussi savoir si tu connais pas la stratégie d'implémentation interne dans ce cas.

    Parce si chaque fois que l'utilisaeur doit changer sa recherche, on lance une requete à la base de données ca devient bizarre.
    Par exemple si l'utilisateur tape P, on fait une requete. Si l'utilisateur ajoute A

    En conclusion. Pourrait t'on me dire comment l'exemple de google est implementé.

    Merci

  7. #7
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par ouedmouss
    En conclusion. Pourrait t'on me dire comment l'exemple de google est implementé.
    Un moteur JavaScript (AJAX) qui toute les 200ms cherche un changement dans le champ de saisie utilisateur. Si changement, il cherche en premier lieu dans un cache utilisateur local, sinonn, requete HTTP vers le serveur pour avoir les possiblités de complétion.

    Ce qui veux dire que le serveur peut être pas mal solicité. Mais d'un autre coté, avec une base de 5000 entrée, un bon index dessus, il n'y absolument aucun problème (même avec un serveur pas énorme).

    Je suis en train d'écrire un article la dessus....

    Normalement ça sera prêt la semaine prochaine. A suivre

  8. #8
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    J'ai déplacé dans le forum J2EE c'est plus approprié...



    Sinon il existe des librairies pour insérer de l'AJAX dans des JSP :


    a++

Discussions similaires

  1. Recherche approximative dans une base de données
    Par Alcide_ dans le forum Bases de données
    Réponses: 2
    Dernier message: 09/07/2008, 18h00
  2. Recherche efficace dans une base de donnée excel
    Par endersox dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/06/2008, 06h36
  3. Réponses: 12
    Dernier message: 26/04/2007, 11h38
  4. Recherche croisé dans une base de donnée
    Par elephant13 dans le forum C#
    Réponses: 1
    Dernier message: 24/03/2007, 15h26
  5. [Conception] Code php dans une base de donnée
    Par krfa1 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 13/09/2005, 10h58

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