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

Hibernate Java Discussion :

[Hibernate] Requete basé sur l'API Criteria


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut [Hibernate] Requete basé sur l'API Criteria
    Voila je seche depuis un moment sur la façon de créer ma requète avec Criteria :

    Je possède donc des User et j'aimerais pouvoir à l'aide d'une requète savoir si l'utilisateur que je créer n'existe pas deja en base de données.

    Je ne c'est pas coment m'y prendre et la doc ne m'est pas très claire :

    Puis-je demander directement la comparaison entre mon User et la base de données (j'ai bien le .equals de redéfini) ou faut t'il effectuer manuellement les contraintes (genre where truc = truc and machin = machin ...).

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 163
    Par défaut
    Jdirai que tu peux faire un :

    session.createCriteria(User.class.getName()).add(Restrictions.eq("pseudo",getPseudo())).uniqueResult();

    qui te renverra le correspondant, mais bon ça revient au même qu'un where !

  3. #3
    Membre émérite Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Par défaut
    Citation Envoyé par K-Kaï
    Je possède donc des User et j'aimerais pouvoir à l'aide d'une requète savoir si l'utilisateur que je créer n'existe pas deja en base de données.
    Tu peux utiliser les "exemples" ... pour regarder si tu récupères un user avec les mm proprietes...

    Je pense que tu peux donc essayer un truc de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session.createCriteria(User.class).add(Example.create(myUser));
    Si le resultat est null c'est qu'il n'existe pas (myUser étant le user que tu veux insérer)

    Mais bon, ca reste un "en gros" la doc précise mieux comment se dépatouiller avec les exemples

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut
    Ouep merci pour les piste, c'est en gros ce que j'avais apercu, ainsi que le Expression.allEq(Map) mais je ne voyais pas comment lui spécifier d'ignorer la casse.

    Je vais farfouiller la doc plus en profondeur ...

  5. #5
    Membre émérite Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Par défaut
    Citation Envoyé par K-Kaï
    Ouep merci pour les piste, c'est en gros ce que j'avais apercu, ainsi que le Expression.allEq(Map) mais je ne voyais pas comment lui spécifier d'ignorer la casse.

    Je vais farfouiller la doc plus en profondeur ...
    Tu peux ajouter un .ignoreCase() à ton exemple pour satisfaire ton besoin

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut
    Justement avec le allEq pas de ignireCase possible, c'est pour cela que je voulais savoir si il n'y avait pas un moyen plus simple que de detaillé attribut par attribut avec les ignoreCase.

    Mais je regarde du coté des Exemple ...

  7. #7
    Membre émérite Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Par défaut
    Citation Envoyé par K-Kaï
    Mais je regarde du coté des Exemple ...
    C'est justement d'eux que je parlais ... mais c vrai qu'en oubliant la majuscules du E, ma phrase prêtait à confusion.

Discussions similaires

  1. Formulaire basé sur requete Union
    Par capitaine dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 14/06/2006, 11h17
  2. Etat basé sur une Requete Analyse Croisée
    Par Bercud dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 08/06/2006, 16h03
  3. Réponses: 3
    Dernier message: 05/01/2006, 15h14
  4. SS Form basé sur une requete
    Par _developpeur_ dans le forum Access
    Réponses: 8
    Dernier message: 19/10/2005, 09h41
  5. Etat basé sur 2 requetes ?
    Par Betomy dans le forum Access
    Réponses: 1
    Dernier message: 20/09/2005, 14h24

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