关于DTO设计相关疑问!!!

dto : Data Transfer Object(数据传输对象)

首先我的理解是它比 bean(即数据库表对象)包含了更多的属性,
例如: 假设 User中只有姓名,年龄, UserDTO中多包含了兴趣相关属性。
我的理解是否正确 ? 是否还有别的内容 ?

希望从设计DTO层面详细给予介绍 (包含设计DTO时注意点等等, 越详细越好)
非常感谢 !!

Bean是跟数据库有关的实体类,而DTO是与数据库无关的数据,只是为了数据显示时创建的中间层用于数据展示的。DTO通常用于不同层(UI层、服务层或者域模型层)直接的数据传输,以隔离不同层,降低层间耦合。
数据传输目标服务的双重目的:第一,他们围绕这个问题,pre-ejb实体不是序列化的;其次,他们含蓄地定义一个组装阶段,所有要使用的数据的提取和整理到数据传输目标之前返回控制[表现层];第三个原因是使用数据传输目标可能是某些应用层不应该能够访问底层的数据访问对象,从而改变数据。