首先介绍什么是dto,根据阿里巴巴的开发手册的分层模型规约
DO(Data Object):此对象与数据库表结构一一对应,通过 DAO层向上传输数据源对象。
DTO(Data Transfer Object):数据传输对象,Service 或Manager 向外传输的对象。
BO(Business Object):业务对象,可以由Service层输出的封装业务逻辑的对象。
Query:数据查询对象,各层接收上层的查询请求。注意超过2 个参数的查询封装,禁止使用 Map 类 来传输。
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。
那么项目中dto和entity有什么区别呢?网上很多都是在概念上解释,感觉似懂非懂。其实实际上就是dto的定义是数据传输,那么是在后端接口上。你可以理解成dto可以有entity的所有字段或者部分字段,同时dto还可以比dto对标的entity类型多一些自己需要的字段。在后端中传输时作为输入实现业务逻辑。