如何命名这样的复合类?

时间:2019-04-20 07:17:07

标签: java class composite sql2o

我们的团队正在使用带有sql2o作为数据库库的Spring Boot 2。在我们服务的粘贴中,对于简单方法,我们只需调用存储库并返回模型。例如,如果我有一个Supplier表,那么我已经在服务中

@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:我简化了代码以提高可重复性,但是我使用了一个通用的rich()函数,该函数调用所有find方法,因此不必重复编写代码。

2 个答案:

答案 0 :(得分:1)

我建议使用Package oracle-java8-installer is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'oracle-java8-installer' has no installation candidate SupplierDto。 DTO代表数据传输对象,通常用于丰富的模型(more here)。

另外,您不应该检查SupplierLegalOfficeDto是否为null,因为存储库总是返回一个非null的列表。

答案 1 :(得分:0)

最后,我在Domain-driven design后面加上了后缀Aggregator