0

我们有一个包含 3 个站点的分布式系统。每个站点都有自己的服务,封装了逻辑和数据。所有服务都使用mysql数据库作为持久性系统和SOAP服务。但是我们在数据库报告方面遇到了麻烦,因为维护服务封装会阻止直接访问数据库。那么如何在不破坏 Web 服务提供的封装的情况下从 Web 服务获取报告,同时保持效率。

4

1 回答 1

0

共享服务和客户端已知的通用数据结构。

我将实现一个非常简单的可序列化数据结构,并让这些实体在客户端和服务器之间进行交换。当然,所有服务都会输出相同的数据结构。

如果您已经有一个带有 DAO/DAL(s) 实体的持久层(如果没有,则构建一个),让它们负责查询数据并执行原始数据到这些新的通用数据结构之间的转换。辅助类会自动完成。

我认为它可能是这种数据结构,是一个基于一组行和列(对象实例数组)的实体,以及一组列标识符,客户端和服务器都知道,这样你的模型知道哪些是客户端请求的列。

通过这种方式,您可以让一个客户请求报告的 3 列,而另一个客户可能会请求同一报告的许多其他列。

此外,我当然不会在数据中包含任何 HTML,只包含原始数据,并且您的客户负责如何呈现该数据。

以上内容有点抽象..但无论如何希望它对您有所帮助。

于 2013-06-23T11:13:39.770 回答