[Hibernate] Comment ramener les valeurs des tables de ref ?
Bonjour,
Je travaille avec eclipse3.1 ,mysql 5.1 et hibernate3.
Je me pose une question de conception.
J'ai deux types de tables en BDD :
- tables de données, qui contiennent les clés des données.
- tables de référence, qui contiennent les libellés de ces clés.
Par exemple, la table de données CHAT, possède le champ ID_COULEUR=3, et la table COULEURS, contient la valeur correspondante :
COULEUR_ID = 3; NOM_COULEUR="GRIS".
Je m'interroge sur la nécessité de créer un nouvel objet CHAT, différent de celui généré par hibernate, qui contiendrait en plus des champs mappant la table CHAT en base, tous ces libellés.
Cela ne pose t'il pas de problème à Hibernate ensuite ? (le mapping n'étant plus totalement respecté).
Quelles sont les best practices ?
Merci.
Re: [Hibernate] Comment ramener les valeurs des tables de re
Salut,
Citation:
Envoyé par PamelaGeek
Je m'interroge sur la nécessité de créer un nouvel objet CHAT, différent de celui généré par hibernate, qui contiendrait en plus des champs mappant la table CHAT en base, tous ces libellés.
Cela ne pose t'il pas de problème à Hibernate ensuite ? (le mapping n'étant plus totalement respecté).
Quelles sont les best practices ?
Je ne suis pas sur de comprendre ton problème ... en particulier qu'est ce que "l'objet généré par hibernate" ?
A priori, il s'agit d'un cas de mapping tout à fait basique, et tu aurais donc (à moins que je n'ai pas saisi la subtilité) :
- La classe Chat
Code:
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 26 27 28 29 30 31 32 33 34 35 36 37
| public class Chat {
private Long id;
private Couleur couleur;
public Chat(){
}
/**
* @return Returns the couleur.
*/
public Couleur getCouleur() {
return couleur;
}
/**
* @param couleur The couleur to set.
*/
public void setCouleur(Couleur couleur) {
this.couleur = couleur;
}
/**
* @return Returns the id.
*/
public Long getId() {
return id;
}
/**
* @param id The id to set.
*/
public void setId(Long id) {
this.id = id;
}
} |
Et la classe Couleur :
Code:
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 26 27 28 29 30 31 32 33 34 35 36 37 38
| public class Couleur {
private Long id;
private String nom;
public Couleur(){
}
/**
* @return Returns the id.
*/
public Long getId() {
return id;
}
/**
* @param id The id to set.
*/
public void setId(Long id) {
this.id = id;
}
/**
* @return Returns the nom.
*/
public String getNom() {
return nom;
}
/**
* @param nom The nom to set.
*/
public void setNom(String nom) {
this.nom = nom;
}
} |
sylvain_2020