Как назвать составной класс как этот? - PullRequest
0 голосов
/ 20 апреля 2019

Наша команда использует Spring Boot 2 с sql2o в качестве библиотеки БД. При вставке в наши службы для тривиальных методов мы просто вызываем репозиторий и возвращаем модель. Например, если у меня есть таблица Поставщика, я имел в службе

@Override
public List<Supplier> findAll() {
    return supplierRepository.findAll();
}

Теперь, поскольку в наших контроллерах нам нужно 99% в случаях, когда другие объекты соотносятся с моделью, я бы создал составной класс, содержащий модель и другие модели. Например:

@Override
public List<UnknownName> findAll() {
    List<Supplier> suppliers = supplierRepository.findAll();

    List<UnknownName> res = new ArrayList<>();

    UnknownName unknownName;
    LegalOffice legalOffice;

    if (suppliers != null) {
        for (Supplier supplier in suppliers) {
            unknownName = new UnknownName();
            unknownName.setSupplier(supplier);
            legalOffice = legalOfficeService.findByIdlegaloffice(supplier.getLegalofficeid);
            unknownName.setLegalOffice(legalOffice);
            res.add(unknownName);
        }
    }

    return res;
}

Каким должно быть имя класса UnknownName?

PS: я упростил код для лучшей возможности восстановления, но я использую универсальную функцию enrich (), которую я вызываю для всех методов поиска, поэтому мне не нужно дублировать код.

Ответы [ 2 ]

1 голос
/ 20 апреля 2019

Я бы порекомендовал SupplierDto или SupplierLegalOfficeDto. DTO расшифровывается как объекты передачи данных и обычно используется для обогащенных моделей ( подробнее здесь ).

Также вы не должны проверять suppliers на ноль, так как репозиторий всегда возвращает ненулевой список.

0 голосов
/ 30 апреля 2019

В конце концов я принял суффикс Aggregator, следуя формулировке Домен .

...