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] Where clause implicite


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de pmartin8
    Inscrit en
    Novembre 2003
    Messages
    306
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 306
    Par défaut [Hibernate] Where clause implicite
    Bonjour,

    J'ai une application J2EE qui utilises hibernate et Oracle.

    Chacune de mes tables de mon application contient un champs "year" qui détermine la rangé de ma table est vaide pour quelle année.

    Donc, a tout coup, je dois ajouter "year=2011" à chacune de mes query, c'est vraiment lourd pour le programmeur.

    J'aimerais trouver une solution soit dans Oracle ou dans hibernate qui créerait un "Where year=?" implicite.

    Est-ce que quelqu'un pourrait me diriger vers une piste de solution? J'ai déja entendu parler de la sécurité par rangé dans Oracle... mais je me demande si ca pourrait m'être utile.

    Peut-etre qu'un bon vieux héritage dans mes entity bean pourrait faire le travail aussi?

    Qu'est-ce que vous en pensez?

    Merci!

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Tu peux éventuellement utiliser l'attribut where de la balise XML class, pour spécifier ton morceau de SQL.

  3. #3
    Membre éclairé Avatar de pmartin8
    Inscrit en
    Novembre 2003
    Messages
    306
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 306
    Par défaut
    Ok... mais je veux que la valeur du Where soit dynamique. Par exemple year=2010 ou year=2011, etc. mais sans que le programmeur ait à se soucier de cette clause.

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Dynamique à partir de quoi, d'une donnée dans une table, de l'année en cours... ?

  5. #5
    Membre Expert
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Par défaut
    Quand tu dis "à chacune des query", ça peut être dangereux.

    Par exemple, tu as peut-être des tables du genre utilisateur (pour le login) qui ne comportent pas cette colonne ?

    Et quelles query veut tu affecter ? Celles générées en java directement, celles faites par Criteria, les namedQueries ? Si tu n'utilises qu'une seule catégorie, tu peux facilement te créer une classe qui rajoutera (de façon paramétrée) la condition sur year.

  6. #6
    Membre éclairé Avatar de pmartin8
    Inscrit en
    Novembre 2003
    Messages
    306
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 306
    Par défaut
    Bien vu Rei

    J'avoue qu'un peu d'héritage ferait le travail dans mes entity bean.

    Je me demandais si le "Row-Level-security" dans Oracle. Est-ce que ca pourrait fonctionner pour moi?

    Je veux explorer tous les possibilités...

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

Discussions similaires

  1. [MySQL] Champ 'Kaskroot' inconnu dans where clause
    Par visqueu dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 11/11/2010, 13h50
  2. requete pl/sql where clause
    Par megapacman dans le forum PL/SQL
    Réponses: 2
    Dernier message: 06/11/2006, 13h59
  3. Unknown column 'xx' in 'where clause'
    Par SaeZ dans le forum Requêtes
    Réponses: 3
    Dernier message: 30/05/2006, 17h25
  4. Réponses: 2
    Dernier message: 27/04/2006, 09h25
  5. Réponses: 1
    Dernier message: 08/11/2005, 14h32

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