我最近了解了数据编组,并做了一些研究。 DTO 和数据封送的定义似乎有很多重叠。
两者有什么区别?
数据编组是获取数据并将其转换为可以序列化的格式(通过连接发送或存储)的操作。数据解组是相反的,是关于获取序列化数据并将其“解组”成可以由语言以更好的方式处理的东西。
DTO 是一个对象,用于表示将要编组/解组的数据(在面向对象语言中)。通常 DTO 没有逻辑,因此它们是贫血对象。
通常,设计良好的面向对象应用程序将使用 DTO,因为核心域通常与传输所需的内容不匹配。例如,传入的 DTO 可以分解为多个对象;或者可以将多个核心对象组装到一个 DTO 中以作为 API 调用的一部分返回。