DTO数据传输对象是什么?在软件开发中如何使用它来优化数据传递?
- 内容介绍
- 文章标签
- 相关推荐
本文共计867个文字,预计阅读时间需要4分钟。
DTO(Data Transfer Object)简称DTO。在web API中,经常会遇到将数据库的实体数据传输给客户端的情况。此时,客户端接收的数据是直接与后端数据库一一对应的。但通常我们并不希望客户端接收和数据库一一对应的数据。
Data Transfer Object简称DTO。
在web api经常会遇到将数据库的实体数据传输给客户端,此时,客户端接收的数据是直接与后端数据库一一对应的。但是我们并不是总是希望客户端收到和数据库中一摸一样的结构数据,所以,DTO的概念就诞生了,只将部分结构或者更改结构,发送给客户端。
一般用途有如下:
- 隐藏数据库中特殊的字段数据,这些数据不希望客户端看到。
- 省略部分属性,这样客户端可以减少负载。
- 有些对象包含嵌入的对象,从而方便客户端使用。
- 如果引入了服务层,那么可以起到解耦服务层和数据库层。
如一本Book,在数据库中,可能含有很多字段,比如Id、Title、Name、以及所属分类、创建时间、发版时间等等,但是我客户端在显示所有书目列表是,有时候只想需要三个字典Id、Title、以及AuthorName,只有想显示具体某本书时,才会显示书的详细信息,即使详细信息,也不会包含所有数据库中的信息。此时我们就可以定义一个BookDto,用于列表书目显示。
本文共计867个文字,预计阅读时间需要4分钟。
DTO(Data Transfer Object)简称DTO。在web API中,经常会遇到将数据库的实体数据传输给客户端的情况。此时,客户端接收的数据是直接与后端数据库一一对应的。但通常我们并不希望客户端接收和数据库一一对应的数据。
Data Transfer Object简称DTO。
在web api经常会遇到将数据库的实体数据传输给客户端,此时,客户端接收的数据是直接与后端数据库一一对应的。但是我们并不是总是希望客户端收到和数据库中一摸一样的结构数据,所以,DTO的概念就诞生了,只将部分结构或者更改结构,发送给客户端。
一般用途有如下:
- 隐藏数据库中特殊的字段数据,这些数据不希望客户端看到。
- 省略部分属性,这样客户端可以减少负载。
- 有些对象包含嵌入的对象,从而方便客户端使用。
- 如果引入了服务层,那么可以起到解耦服务层和数据库层。
如一本Book,在数据库中,可能含有很多字段,比如Id、Title、Name、以及所属分类、创建时间、发版时间等等,但是我客户端在显示所有书目列表是,有时候只想需要三个字典Id、Title、以及AuthorName,只有想显示具体某本书时,才会显示书的详细信息,即使详细信息,也不会包含所有数据库中的信息。此时我们就可以定义一个BookDto,用于列表书目显示。

