Bonjour, je suis stagiaire et je débute le JEE et Hibernate.
Mon problème et que je dois chercher une ligne dans une base de données dont la clé primaire et composé de deux champs :
PRIMARY KEY(id1, id2).
Pour chercher une ligne dans la base de donnée j'utilise la fonction get() de HibernateTemplate :
Dans le cas d'une table ayant sa clé primaire sur un seul champ je passe juste l'id en paramètre de cette façon :Code:
1
2
3 public Object get(Class entityClass, Serializable id) throws DataAccessException
Or, ici, j'ai un id1 de type long et un id2 de type int qui permettent d'identifier une entrer unique dan ma table.Code:
1
2 long id=1; this.getHibernateTemplate().get(MaClasse.class, id);
J'ai essayé de créer un objet implémentant l'interface serializable contenant un int et un long puis de le passé à get mais ça ne marche pas.
Je voudrais éviter les solution du genre :
1.prendre toutes les lignes dans la table
2.chercher les lignes contentant id1
3.chercher dans ses ligne celle qui contient id2
Voila en espérant que mon explication est claire. Je pense que la solution ne doit pas être très compliqué étant donné que les id composite sont très fréquent en base de donnée.