数据传输对象设计模式是一种经常使用的设计模式。它主要用于从客户端到服务器一次性传递具有多个属性的数据,以避免多次调用远程服务器。
目的
从客户端到服务器一次性传递具有多个属性的数据,以避免多次调用远程服务器。
问题
您希望跨层传输多个数据元素。
动机
您希望客户端访问其他层中的组件以检索和更新数据。
您希望减少网络上的远程请求。
您希望避免由流量高的聊天应用程序而导致的网络性能下降
解决方案
使用传输对象跨层传输多个数据元素。
说明
数据传输对象模式是一种设计模式,数据传输对象将相关信息一起提供,以避免对每条信息进行多次调用。
Transfer Object是一个简单的POJO类,具有getter / setter方法,并且是可序列化的,因此可以通过网络传输。它没有任何行为。
服务器端业务类通常从数据库中提取数据并填充POJO并将其发送到客户端或按值传递。对于客户端,传输对象是只读的。
客户端可以创建自己的传输对象并将其传递给服务器,以便一次性更新数据库中的值。
维基百科说
数据传输对象是在进程之间传输数据的对象。其使用的动机是进程之间的通信通常采用远程接口(例如,Web服务),其中每个调用都是代价不菲的操作。[因为每个调用的大部分成本都与客户端和服务器之间的往返时间有关,减少调用数量的一种方法是使用一个对象(DTO)它聚集了几个调用可能传输的数据,但只由一个调用提供服务。
结构
让我们使用UML类图来展示解决方案的基本结构,本节中的UML序列图介绍了解决方案的动态机制。
下面是表示数据传输对象设计模式的关系的类图和序列图。
类图</