Spring MVC Что такое сервисный компонент? - PullRequest
4 голосов
/ 06 июля 2011

Может ли кто-нибудь привести несколько примеров возможного обслуживания.Я изучаю книгу, но не могу понять, что может сделать служба?Он предоставляет обработанные данные для modelAndView в контроллер, но как это выглядит, если это Java-бин, соединяющий и извлекающий результаты из базы данных, что это может быть?

Ответы [ 2 ]

12 голосов
/ 06 июля 2011

Сервисный компонент - это место, где все ваши DAO собираются вместе и имеют бизнес-логику. Вы можете думать об этом так.

  • DAO - должен загружать данные только из БД. Ничего больше.
  • Сервисы - могут использовать daos для загрузки нескольких объектов и выполнения бизнес-логики
  • контроллеры - используйте сервисы для загрузки объектов. У них не должно быть ничего, кроме простой логики, потому что сложные логики должны действительно принадлежать сервису. Причина этого кроется в будущем, когда вы захотите повторно использовать эту логику, вы можете сделать это, если она в рабочем состоянии, но не если она находится в контроллере.

Пример:

  • BookDAO - загружает книгу
  • BookService - загружает книги для человека, который вошел в систему

Наконец, я хотел бы процитировать документ Grails для чистой краткой цитаты.

Как и веб-слой, Grails определяет понятие сервисного уровня. Команда Grails препятствует встраивание базовой логики приложения внутри контроллеров, так как это не так способствовать повторному использованию и чистому разделению проблем.

0 голосов
/ 06 июля 2011

Примером услуги может быть служба электронной почты в бизнес-приложении (не в клиенте электронной почты). Этот Сервис предлагает другим Компонентам функциональность (сервис) для отправки электронных писем, чтобы уведомлять пользователей о вещах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...