title: MVC confusion when it comes to lists and db
body: <p>I am trying to implement MVC for my Java desktop application and I am not very familiar with it. For the purpose of the question, I am considering a use case in which you click "refresh" button, it queries DB for list of students and update students lists. Here are my questions that have been confusing me:</p>
  
  <p>1-For querying the DB, does it happen in the controller or in the model? My gut feeling says its controller who queries and once results are received, it updates the model. However I read in many posts that the Model is the one who knows its state transitions and does its updates!</p>
  
  <p>2- Who creates the the view and model? Does the controller create them or are they created externally and passed to the controller?</p>
  
  <p>3-In the above use case, does the model consists of an ArrayList of Students or is the model just a Student object but the Controller has and ArrayList of models?</p>
  
  <p>Please help a fellow developer </p>