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 :

[HQL] Filtrer la date sur un attribut datetime


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Par défaut [HQL] Filtrer la date sur un attribut datetime
    Bonjour,

    J'ai un objet persistant que voici :
    Period
    - startDate
    - endDate
    J'ai besoin d'exploiter, dans une requête HQL, ces deux attributs de type java.util.Date, sans tenir compte des HH:MM:SS qu'elles peuvent contenir.

    Je ne pense pas pouvoir retravailler la date directement dans ma requête HQL, car c'est basé sur une jointure et les possibilités du langage en la matière sont limitées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND monObjet.dateCreation BETWEEN period.startDate AND period.endDate
    Mon objet Period est généré, ce qui signifie que je ne peux pas modifier le corps des getters de startDate et endDate (pour retravailler la date au moment où ils sont invoqués).
    J'ai tenté d'ajouter deux getters spécifiques (qui renvoient les dates dans le bon format) en y faisant référence dans la requête mais Hibernate ne les comprends évidemment pas.

    Quelqu'un connaitrait-il un moyen de s'en sortir ?

    Ai-je été suffisamment clair ?

    Merci d'avance pour votre aide.
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Je pense que tu peux manipuler directement ces dates dans ton HQL en utilisant les fonctions year(),month(),day() et to_date().

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND monObjet.dateCreation BETWEEN TO_DATE(YEAR(period.startDate)+'-'+MONTH(period.startDate)+'-'+DAY(period.startDate),'yyyy-MM-dd') AND TO_DATE(YEAR(period.endDate)+'-'+MONTH(period.endDate)+'-'+DAY(period.endDate),'yyyy-MM-dd')


    A+.

  3. #3
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Par défaut
    Ah oui ? J'aurais pas cru...
    Je te remercie. Je testerai ça lundi
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  4. #4
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Par défaut
    Bon, je n'ai pas encore testé car il se peut que je n'ai plus besoin de faire ça...
    Merci quand même.
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

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

Discussions similaires

  1. Filtrer le dates sur le mois en cours dans la requête
    Par isabelle b dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 12/12/2008, 01h03
  2. Réponses: 14
    Dernier message: 09/02/2008, 15h10
  3. filtrer une bdd sur un attribut de type date
    Par nadia2222 dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/06/2007, 21h10
  4. [vb.net] filtrer un dataView sur des dates
    Par A2rem dans le forum Windows Forms
    Réponses: 2
    Dernier message: 15/12/2006, 09h42
  5. Réponses: 3
    Dernier message: 12/07/2006, 09h13

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