答案是肯定的。
這是因爲Actor-> Movie的關係有一個屬性as_character
,你也可以找到一種不做類的方法,但是很長一段時間它會導致問題(也許是因爲你忘記了它而創建的一些愚蠢的bug,或者某人否則不知道它,你不想處理的東西)。
如果這是您的第一個方法,我認爲可以讓您感到困惑的是如何表達關係。
是進來首先想到的辦法,大部分時間,是有一個ActorMovie類,如:
public class ActorMovie {
Integer actor_id;
Integer movieid;
String as_character;
//getters, setters, equals, hashCode, toString
}
但你也可以把它作爲一個值Actor
(或Movie
)和有它喜歡:
public class ActorMovie {
Integer movieid;
String as_character;
//getters, setters, equals, hashCode, toString
}
和Actor
類:
public class Actor {
Integer actor_id;
String name;
String sex;
Set<ActorMovie> movies;
//getters, setters, equals, hashCode, toString
}
他們都解決了這些問題,他們只是改變你將如何通過代碼與這些數據進行交互,以瞭解何時更好地使用這兩種數據,你必須嘗試兩種方法並查看哪些變化,所以選擇你感覺更多的東西「自然」並看到結果。
對我有意義。不知怎的,有這樣的事情而不是引用id是錯的嗎? '公開課演員電影{ 演員演員; 電影電影; String as_character; // getters,setters,equals,hashCode,toString }' – Panque
好吧,我喜歡它。謝謝。 – Panque
是的,它也可以是一個解決方案!如果你使用'Movie',那麼改變是因爲有權訪問'ActorMovie'的人可以調用電影的設置者,所以你可以加載一個ActorMovie,然後你可以做一些像'actorMovie.getMovie()。setName (「別的東西」)'。您在選擇使用什麼時需要考慮它(爲了更好地解釋關於總體設計模式的一些搜索) – rascio