实施服务层方法的指南

时间:2011-11-16 06:11:35

标签: soa n-tier-architecture business-logic-layer

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

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

  • 另一个问题是关于在业务层组织方法,似乎对于服务层的任何方法,我们必须在业务层实现相应的方法。如果我们遵循这个逻辑,服务层的方法将像假人一样,只需要处理授权和验证。例如:当获取来自两个表的连接的数据时,我们应该获取服务层上的两个表,然后在服务层上进行连接,还是应该在业务层上具有执行相同操作的功能。从根本上减少服务层和业务层之间的数据传输。

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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