我构建了一个 MVC 应用程序,其模型层包含实体、数据映射器和服务类。到现在为止还挺好。但是现在我有一个控制器需要显示一个包含来自多个数据库表的数据的报告,这些数据与我的模型中的任何实体都没有关系。该报告是根据包含连接 SUM/AVG-selects 的高级 MySQL 查询构建的。我想要的只是一个数据数组,所以要显示在视图中。
我可以在我的服务层中混合方法,一些返回实体(“getById()”)和一些只从我的数据库查询返回数据数组(“getAdvancedReport()”)?
可以将 db-queries 放在服务层吗?如果没有,他们应该去哪里?数据映射器感觉不对,因为它的工作只是将我的实体映射到数据库,而不是检索自定义数据。
也许只是“编码官僚主义”,但我需要正确地做到这一点。
除了域模型的简单 CRUD 示例之外,在网上找不到任何东西。