Grails Generate-контроллер создает странный интерфейс службы - PullRequest
0 голосов
/ 05 октября 2019

Я перевожу приложение 2.5.6 на 3.3.10. При создании контроллеров обнаружил, что служба была создана и использована из автоматически сгенерированного кода контроллеров. Глядя на сервис, это просто интерфейс.

Глядя на документацию Grails-контроллера, я не могу найти информацию об этой "сервисе интерфейса"

http://docs.grails.org/3.3.10/ref/Command%20Line/create-controller.html

То, что этот сервис делает внутри, также является загадкой, и неясно, что / где я должен касаться кода, когда мне нужно настроить любой из этих методов в сервисе. Я думаю, что это новая вещь в Grails 3.3.x, но я не уверен, где найти дополнительную информацию.

Итак, конкретные вопросы:

  1. Какова цель этой службы интерфейса?
  2. Где это задокументировано?
  3. Как настроить? Как быть реализованным в пользовательском сервисе?

Пример сервиса:

import grails.gorm.services.Service

@Service(SyncLog)
interface SyncLogService {

    SyncLog get(Serializable id)

    List<SyncLog> list(Map args)

    Long count()

    void delete(Serializable id)

    SyncLog save(SyncLog syncLog)

}

1 Ответ

2 голосов
/ 05 октября 2019

Какова цель этой службы интерфейса?

Это отправная точка для вашего уровня доступа к данным.

Где это задокументировано?

В http://gorm.grails.org/latest/hibernate/manual/index.html#dataServices

Как настроить?

Это интерфейс, который вы можете редактировать, добавлять / удалять любые методы запросов, которые вам нравятся. Связанная выше документация описывает много деталей.

...