2

我们正在开发一个三层应用程序,其中表示层与服务层通信,服务层又与业务层通信。业务层可以访问数据库。目前我们已经实现了业务层来保存表的 CRUD 操作。对于组织服务层和业务层的方法,我们有一些疑问。

  • 首先,服务层的方法应该如何分组?我们是否应该基于页面对方法进行分组,其中页面所需的所有数据都由服务的方法提供。或者我们应该通过多个服务调用来获取页面数据?

  • 另一个问题是在业务层组织方法,似乎对于服务层的任何方法,我们都必须在业务层实现相应的方法。如果我们按照这个逻辑,服务层的方法就像傻瓜一样,只负责授权和验证。例如:当从两个表的连接中获取数据时,我们应该在服务层获取两个表,然后在服务层进行连接,还是我们应该在业务层有一个功能来做同样的事情。从本质上减少了服务层和业务层之间的数据传输。

4

2 回答 2

1

请查看DTO模式。使用 DTO 模式 - 您可以最大限度地减少对后端服务的调用次数。并且给定 DTO 可以映射到多个 BO。您需要根据数据需求设计 DTO 以填充 UI。

于 2011-11-16T07:58:03.790 回答
0

好吧,看起来我想要的是遵循 REST 架构。这意味着我应该保持服务层和表示层之间的接口统一。服务层负责授权,并将所有调用委托给业务层。在业务层,我们保留在将它们发送到 SL 之前序列化为 XML、JSON 或其他任何内容的 DTO。真正帮助我的是阅读 REST 文章并详细探索它们。

于 2011-11-30T19:09:20.730 回答