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 :

Comparer une Date et un Timestamp avec Criteria


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 97
    Par défaut Comparer une Date et un Timestamp avec Criteria
    Bonjour à tous,

    Techno de mon projet :
    - Java EE
    - Struts 2
    - Hibernate

    Voici mon problème : J'ai une table contenant une liste d'utilisateurs, et notamment un champ "date" étant de type timestamp correspondant au jour et heure d'inscription de cet utilisateur (pour certaines raisons, ce champ DOIT RESTER de type timestamp).
    J'aimerais pouvoir effectuer une recherche Criteria en lui disant : "Récupère moi tous les utilisateurs qui se sont enregistré tel jour". Il faudrait donc que je lui passe une Date en paramètre (sans heure), et ainsi pouvoir récupérer la liste des tous les utilisateurs ayant créé leur compte ce jour là.

    Etant débutant en Criteria, je ne vois pas du tout comment faire.

    Merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 97
    Par défaut
    J'ai trouvé une solution, je ne sais pas si c'est la meilleure possible avec Criteria, mais ça marche pour moi en tout cas.
    Je vais en fait utiliser la "Restriction" between en y passant ma date un coup avec l'heure 0:00:00 et un coup avec l'heure 23:59:59.

    Ce qui nous donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Date from = ToolBox.setTimeToDate(date, 0, 0, 0);
    Date to = ToolBox.setTimeToDate(date, 23, 59, 59);
     
    criteria.add(Restrictions.between("date", from, to));
    Avec ma fonction setTimeToDate() :
    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
    23
    24
    25
    /**
         * Permet de définir un temps précis à un objet Date
         *
         * @param date
         * @param hours
         * @param minutes
         * @param seconds
         * @return L'objet Date avec les informations d'heures, minutes et secondes
         */
        public static Date setTimeToDate(Date date, Integer hours, Integer minutes, Integer seconds) {
     
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(date);
            if (hours != null) {
                calendar.set(Calendar.HOUR_OF_DAY, hours);
            }
            if (minutes != null) {
                calendar.set(Calendar.MINUTE, minutes);
            }
            if (seconds != null) {
                calendar.set(Calendar.SECOND, seconds);
            }
     
            return calendar.getTime();
        }
    En espérant que ça aidera quelqu'un

Discussions similaires

  1. Comparer une date avec current_stamp
    Par Kel-T dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 15/08/2011, 15h27
  2. Comparer une date avec la date du jour
    Par Med_be dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 29/05/2011, 18h24
  3. Réponses: 3
    Dernier message: 31/01/2011, 18h26
  4. Comparer une date avec la date du jour
    Par DEV-10 dans le forum Développement
    Réponses: 25
    Dernier message: 11/08/2009, 16h36
  5. Comparer une date (String) avec la date courant
    Par Dalidou dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 12/03/2009, 15h08

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