Comment établir une relation entre deux tables
Bonjour, :)
je cherche à établir une relation entre deux tables
sauf que je n'ai pas compris l'utilisation du mot clé "set" dans les fichiers *.hbm.xml ...
si quelqu'un pourrait m'aider à lier ces deux tables je serais très reconnaissant
les deux tables:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
CREATE TABLE `colors` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`color` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;
CREATE TABLE `coloru` (
`user` varchar(20) NOT NULL,
`id_color` int(11) NOT NULL,
PRIMARY KEY (`user`),
KEY `relation` (`id_color`),
CONSTRAINT `relation` FOREIGN KEY (`id_color`) REFERENCES `colors` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1; |
que dois-je ajouter dans mes fichiers .hbm.xml
Color.hmb.xml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.alexwestconsulting.hibernateexample.beans.Color" table="colors">
<id name="id">
<generator class="assigned"/>
</id>
<property name="color"/>
</class>
</hibernate-mapping> |
et UserColor.hbm.xml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.alexwestconsulting.hibernateexample.beans.UserColor" table="coloru">
<id name="user">
<generator class="assigned"/>
</id>
<property name="id_color"/>
</class>
</hibernate-mapping> |
Merci ^^
utiliser du code générer c'est bien mais le comprendre c'en encore mieux
Tout est dans le titre de mon post. en fin je n'ai rien contre l'utilisation des outils à "tout faire". cependant pour ceux qui préfère générer les fichiers de mapping via hibernate tools à partir du sql. vous êtes posez la question par exemple d'implémentation d'un éventuelle cas d'héritage? Car il en existe plusierus stratégies d'implémentation à cet effet selon les objectifs visées. Etes sur que celle géérée par hibernate tools vous convient? auriez vou besoin de polymorphisme? bref autant d question que d'après moi je crois que la décision revient au developpeur.
Voila pour quoi en gégéral je fais mes mapping moi meme et je laisse les outils gégéré le java et le sql.