用於查詢數據庫,它在控制器或模型發生?
簡答題,查詢數據庫發生在模型中。
Student列表是GUI的模型,其中Student是包含學生信息的Java對象。學生名單也是數據庫的典範。
您可以通過不同方式來處理學生列表和數據庫之間的交互。一種方法是在GUI初始化開始時讀取所有學生信息。當您的用戶與GUI進行交互時,您的GUI控制器將插入,更新並標記學生在GUI模型中刪除。最後,當用戶關閉GUI時,將學生列表中的所有更改寫入數據庫。這種方式雖然簡單,但如果GUI異常終止,則會導致數據損壞。而且,一次只有一個人可以更改數據庫。
更好的方法是像以前一樣在GUI初始化開始時讀取所有學生信息。當用戶與GUI進行交互時,GUI控制器會更新GUI模型中的學生列表。每次插入,更新或刪除後,都會調用數據訪問對象中的相應方法分別插入,更新或刪除學生信息。
誰創建了視圖和模型?
你這樣做。 :-)
模型/視圖/控制器模式不僅僅用於組織代碼。通常,您首先創建模型的第一個切割。然後創建視圖,並將這些字段添加到創建第一個剪輯時忘記的模型中。最後,你創建控制器。控制器除了執行模型中的方法外,不應該做任何事情來更新視圖中的模型和方法,以重新繪製視圖或重新驗證視圖。
您將模型的實例和視圖的實例傳遞給您的控制器。您應該只有一個模型實例和一個視圖實例。但是,他們不是單身人士。
在上面的用例中,模型是由學生的ArrayList組成還是僅僅是一個Student對象的模型,但是Controller有模型和ArrayList?
最後,一個簡單的問題。都不是。
您的型號是列表的學生。 List接口將由ArrayList類實現。像這樣的東西。
List<Student> studentList = new ArrayList<>();
通過使用接口,您可以輕鬆地將ArrayList更改爲LinkedList或您自己的List接口的實現。
一般的Java規則是使用接口,除非你需要的方法只在具體類中定義。
我希望這是有幫助的。
誰低估,謹慎地說爲什麼?這是一個非常有效的問題 – Snake
請將您的帖子限制爲每個帖子一個問題 –