作者Kenqr (夏天的微笑)
看板java
標題[問題] 表達物件之間關係的資料如何儲存?
時間Mon Nov 10 10:42:39 2014
假設有20個老師,8個班級。
每個老師會教好幾個班級,每個班級也會有好幾個老師教。
老師會設計成一個class,班級也是設計成一個class,
這部分應該沒什麼問題。
那麼老師和班級之間的關係,應該要如何儲存呢?
1.在老師的class裡儲存 (或者在班級的class裡儲存)
class Teacher{
String name;
Classroom[] classrooms; //班級
//可能還需要有教哪個科目的資訊,這裡先簡化
/* ... */
}
2.另外設計一個用來儲存老師-班級關係的class
class Teach{
String course; //科目
Teacher teacher;
Classroom classroom;
/* ... */
}
假如在資料庫裡面的話,關係通常會有自己的資料表,
但是在java裡應該怎麼設計就沒有概念了,還請各位高手指點。
--
﹌ ﹌
﹌ 十
起初,他們捉◢
共產黨員 ,﹑ ,我不說話,因為我不是
共產黨員
後來,他們捉▕工會會員 ●
_<
█>
,﹑ ,我不說話,因為我沒有
參加工會
後來,他們捉▕天主教徒<█『
猶,﹑ ,我還是不說話,因為我
是新教徒
後來,他們捉▕ 猶太人 /\ 」」 =
天●=
工●=
共●,我不說話,因為我
是日耳曼人
ψQSWEET**◥ 最後, 等到他們來捉我時 ▏ ▏ ▏,已經沒有人能為我說話了...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.209.142
※ 文章網址: http://www.ptt.cc/bbs/java/M.1415587363.A.200.html
→ ssccg: 1 關係就是reference 11/10 12:43
→ ssccg: 像2如果還有其他屬性的話,應該是還有另一個class Course 11/10 12:51
→ ssccg: 老師跟班級之間就不是直接關係 11/10 12:52
這邊是舉例,所以比較簡化,
假設只需要考慮老師、班級,還有老師和班級之間的關係這樣
推 yyc1217: 多對多通常會用另一個表格來儲存關係 11/10 14:23
推 yyc1217: 在java裡的話要看你用的工具,例如hibernate的話 11/10 14:25
→ yyc1217: 就是用註解的方式標明 11/10 14:26
推 yyc1217: 不過有時為了操作方便(排課、排教室等等) 會把關係實體化 11/10 14:29
這程式會需要和資料庫連結,但老實說我還沒寫過連資料庫的程式,
目前也還沒寫到這部份。
所以說要和資料庫連結的情況下,把多對多的關係設計成一個class會比較好囉?
那假如是不需連資料庫的情況呢?
※ 編輯: Kenqr (1.34.239.200), 11/10/2014 23:04:47