Должны ли быть выделены под-объекты в модели или в Map Model?

Это является продолжением моего предыдущего вопроса: должны ли быть заданы зависимые строки в модели или контроллере? ,

Предположим, что Патрон может проверить Книги. Если, учитывая объект Patron, где и как должны быть извлечены Книги, которые они проверили?

Вот некоторые возможности, которые я рассмотрел:

  • В модели Patron добавьте метод getBooks
  • Когда Патрон создается, автоматически получает свои книги и сохраняет его как свойство books
  • Создайте метод в PatronMapper, называемый getBooks который принимает идентификатор Patron ID

Чтобы вы посоветовали? Спасибо,