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

Servlets/JSP Java Discussion :

formulaire de recherche avec plusieurs paramaitres


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut formulaire de recherche avec plusieurs paramaitres
    Bonjour ,
    J'ai un formulaire avec par exemple 3 ou 4 paramaitres de recherches.
    Dans ma méthode de recherche, j'ai une requete qui me faits "Select .... from ... where param1=.....AND param2=.... AND param3=....."
    Dans ce cas la obligatoirement je doit remplir les 3 champs.
    Mais je veux que si je saisie un seul champ, la sélection se faits juste sur ce champs. Si je saisie 2 champs, la sélection se faits sur 2 champs, .....
    Donc, je doit faire 3 méthodes ou quoi???
    Une avec un seul paramaitre, l'autre avec 2 , et l'autre avec 3; leurs faire appel selon le cas ou comment?
    Merciiii

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    oui, maintenant, le plus simple est de regrouper ca en une seule méthode qui construit ta requte sql en fonction des valeur soumise. Genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    StringBuilder b = new StringBuilder("Select .... from ... where param1=.....");
    if (param2!=null)
     b.append("AND param2=....");
    if (param3!=null)
     b.append("AND param3=.....");

  3. #3
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    oui, maintenant, le plus simple est de regrouper ca en une seule méthode qui construit ta requte sql en fonction des valeur soumise. Genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    StringBuilder b = new StringBuilder("Select .... from ... where param1=.....");
    if (param2!=null)
     b.append("AND param2=....");
    if (param3!=null)
     b.append("AND param3=.....");
    Merci tchize, c'est génial comme réponse, reste petite question:
    Je travaille avec EJB, donc dans le modele, j'ai faits un namedQuery= "select.. from... where param1=.... and param2=...)
    Et dans mon sessionBean,
    j'ai juste passé mes parametres à ce namedQuery comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Query query = em.createNamedQuery("findObjects");
    		query.setParameter("annee", annee);
    		query.setParameter("numero", num);
                              query.setParameter("libelle", libelle);
    Donc, à ce que je pense, je vais faire ma requete directement dans mon sessionBean??

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ha oui, namedquery. Ben soit tu fait la requete directement dans l'EJB si t'as beacoup de combinaisons possible, soit tu fais plusieurs namequery si peu de combinaisons, à toi de voir

  5. #5
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    ha oui, namedquery. Ben soit tu fait la requete directement dans l'EJB si t'as beacoup de combinaisons possible, soit tu fais plusieurs namequery si peu de combinaisons, à toi de voir
    Voila ma proposition:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public List<Object> findObjectsByAnnee(int annee, int num) {
    StringBuilder b = new StringBuilder("select o from Object o where o.anneObj= :annee");
    if (num != 0)
     b.append("AND o.num= :num");
    Query query = em.createQuery(b.toString());
    List<Object> objects = query.getResultList();
    return objects ;
    c'est juste comme ça?
    je l'ai crée directement dans mon sessionBean.

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    a priori, c'est bon

Discussions similaires

  1. VBA-E Comment réaliser une recherche avec plusieurs critères ?
    Par Larsen21 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 14/12/2006, 13h43
  2. formulaire de recherche avec les dates
    Par chelmi95 dans le forum Access
    Réponses: 5
    Dernier message: 25/10/2006, 21h00
  3. Réponses: 7
    Dernier message: 31/08/2006, 14h11
  4. [VBA-E]rechercher avec plusieur critère.
    Par morgan47 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/06/2006, 19h48
  5. Réponses: 6
    Dernier message: 04/11/2005, 17h09

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