J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans
un ou plusieurs films. un film est joué par un ou plusieurs acteurs.
pouvez vous me dire comment traduire cette relation entre la classe acteur
et la classe film? relation de type acteur (0.*)<---->(0,*)film
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Gilquin
Si tu utilises un mapping objet- relationnel, il te faut 3 tables Acteur, Film et une table de lien LinkActeurFilm. Le mapping generera les 2 classes Acteur et Film et chacune(Ca peut etre que dans un sens) aura un vecteur/array contenant une liste de l'autre. Des methodes permettront de faire les ajouts/retrais dans ces listes. A l'execution, le mapping generera les SQL necessaires pour gerer cela.
Pierre
"Joseph KHOURY" a écrit dans le message de news: 43bdef3f$0$19909$
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
Si tu utilises un mapping objet- relationnel, il te faut 3 tables Acteur,
Film et une table de lien LinkActeurFilm.
Le mapping generera les 2 classes Acteur et Film et chacune(Ca peut etre
que dans un sens) aura un vecteur/array contenant une liste de l'autre.
Des methodes permettront de faire les ajouts/retrais dans ces listes.
A l'execution, le mapping generera les SQL necessaires pour gerer cela.
Pierre
"Joseph KHOURY" <jkhoury@free.fr> a écrit dans le message de news:
43bdef3f$0$19909$626a54ce@news.free.fr...
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans
un ou plusieurs films. un film est joué par un ou plusieurs acteurs.
pouvez vous me dire comment traduire cette relation entre la classe acteur
et la classe film? relation de type acteur (0.*)<---->(0,*)film
Si tu utilises un mapping objet- relationnel, il te faut 3 tables Acteur, Film et une table de lien LinkActeurFilm. Le mapping generera les 2 classes Acteur et Film et chacune(Ca peut etre que dans un sens) aura un vecteur/array contenant une liste de l'autre. Des methodes permettront de faire les ajouts/retrais dans ces listes. A l'execution, le mapping generera les SQL necessaires pour gerer cela.
Pierre
"Joseph KHOURY" a écrit dans le message de news: 43bdef3f$0$19909$
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
Fabien Bergeret
Joseph KHOURY wrote:
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
public class Acteur {
public Set getFilms() { return films; } public void addFilm(Film p_film) { films.add(p_film); //Gestion du lien en retour p_film.addActeur(this); } public void removeFilm(Film p_film) { films.remove(p_film); //Gestion du lien en retour p_film.removeActeur(this); } private Set films = new HashSet(); ... }
et un truc equivalent pour la classe Film
La gestion du lien en retour peut se faire ou non dans ces classes. Cela depend des resposnabilites des couches de ton appli.
Joseph KHOURY wrote:
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans
un ou plusieurs films. un film est joué par un ou plusieurs acteurs.
pouvez vous me dire comment traduire cette relation entre la classe acteur
et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
public class Acteur {
public Set getFilms() {
return films;
}
public void addFilm(Film p_film) {
films.add(p_film);
//Gestion du lien en retour
p_film.addActeur(this);
}
public void removeFilm(Film p_film) {
films.remove(p_film);
//Gestion du lien en retour
p_film.removeActeur(this);
}
private Set films = new HashSet();
...
}
et un truc equivalent pour la classe Film
La gestion du lien en retour peut se faire ou non dans ces classes. Cela
depend des resposnabilites des couches de ton appli.
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
public class Acteur {
public Set getFilms() { return films; } public void addFilm(Film p_film) { films.add(p_film); //Gestion du lien en retour p_film.addActeur(this); } public void removeFilm(Film p_film) { films.remove(p_film); //Gestion du lien en retour p_film.removeActeur(this); } private Set films = new HashSet(); ... }
et un truc equivalent pour la classe Film
La gestion du lien en retour peut se faire ou non dans ces classes. Cela depend des resposnabilites des couches de ton appli.
Hervé AGNOUX
Joseph KHOURY wrote:
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
Lorsqu'il apparait un schéma comme ça, surtout en Java, j'essaie à tous prix de casser la double multiplicité.
Dans les bases de données qui travaillent en pointeurs cela peut encore aller, mais en java qui, tantôt travaille en pointeurs, tantôt en valeur, cela peut vite faire des trucs ingérables. Si tu sérializes un objet "film", par exemple, cela peut te conduire par ricochets à sérializer l'ensemble des films et acteurs pour un simple film...
Pour casser cette double multiplicité, comme tu fais du UML, j'imagine que tu as quelques idées. Je voulais juste te signaler que, à mon avis, c'était prudent.
Si cela n'est pas possible, alors il faut trouver un troisième objet qui fera la liaison multiple ; je ne connais pas l'ensemble de ton sujet alors il m'est difficile de t'aider. Et puis cela dépend aussi de tes impératifs : s'il ne s'agit "que" de gérer une base de données et de gérer des appels SQL, ce n'est peut être pas la peine d'être trop orthodoxe.
A+.
-- Hervé AGNOUX http://www.diaam-informatique.com
Joseph KHOURY wrote:
Bonjour,
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans
un ou plusieurs films. un film est joué par un ou plusieurs acteurs.
pouvez vous me dire comment traduire cette relation entre la classe acteur
et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
Lorsqu'il apparait un schéma comme ça, surtout en Java, j'essaie à tous prix
de casser la double multiplicité.
Dans les bases de données qui travaillent en pointeurs cela peut encore
aller, mais en java qui, tantôt travaille en pointeurs, tantôt en valeur,
cela peut vite faire des trucs ingérables. Si tu sérializes un objet
"film", par exemple, cela peut te conduire par ricochets à sérializer
l'ensemble des films et acteurs pour un simple film...
Pour casser cette double multiplicité, comme tu fais du UML, j'imagine que
tu as quelques idées. Je voulais juste te signaler que, à mon avis, c'était
prudent.
Si cela n'est pas possible, alors il faut trouver un troisième objet qui
fera la liaison multiple ; je ne connais pas l'ensemble de ton sujet alors
il m'est difficile de t'aider. Et puis cela dépend aussi de tes
impératifs : s'il ne s'agit "que" de gérer une base de données et de gérer
des appels SQL, ce n'est peut être pas la peine d'être trop orthodoxe.
J'ai une classe acteur et une autre classe film. Un acteur peut jouer dans un ou plusieurs films. un film est joué par un ou plusieurs acteurs. pouvez vous me dire comment traduire cette relation entre la classe acteur et la classe film? relation de type acteur (0.*)<---->(0,*)film
Merci de votre aide
Lorsqu'il apparait un schéma comme ça, surtout en Java, j'essaie à tous prix de casser la double multiplicité.
Dans les bases de données qui travaillent en pointeurs cela peut encore aller, mais en java qui, tantôt travaille en pointeurs, tantôt en valeur, cela peut vite faire des trucs ingérables. Si tu sérializes un objet "film", par exemple, cela peut te conduire par ricochets à sérializer l'ensemble des films et acteurs pour un simple film...
Pour casser cette double multiplicité, comme tu fais du UML, j'imagine que tu as quelques idées. Je voulais juste te signaler que, à mon avis, c'était prudent.
Si cela n'est pas possible, alors il faut trouver un troisième objet qui fera la liaison multiple ; je ne connais pas l'ensemble de ton sujet alors il m'est difficile de t'aider. Et puis cela dépend aussi de tes impératifs : s'il ne s'agit "que" de gérer une base de données et de gérer des appels SQL, ce n'est peut être pas la peine d'être trop orthodoxe.