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

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

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

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

0

1个回答

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

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于产品设计中的几个问题
第一个,安全性。这个是最基本的要求,但是很多设计代码的人会写正确的功能。这个在开始的时候感觉进度很快,但从较长时间来看,后续的测试和优化将会花费更多时间,这个大概可以叫做业绩驱动开发吧,因为市场很着急,老板很着急。不安全的设计会造成最差的客户体验,在工业领域将更严重,要么损坏作业对象,要么损坏机器,更恐怖的是伤害到人。 第二个,性能。有一些产品可以工作在恶劣的环境,代替人的工作。但是由于速度慢,
生活中的年月日相关问题
1. 问题描述:从控制台输入一个4位数字的年份,输入月份,号数那么判断是一年中的第几天 因为年份涉及到是闰年还是平年的问题,那么我们一开始的时候需要判断输入的年份是平年还是闰年然后才可以对特殊的2月份进行处理一下,使用一个额外的数组来存储一年中每个月的天数,方便我们在for循环中进行操作,我们可以在for循环中对月份的天数进行累加,直到月份达到输入月份的上一个月份即可,然后再循环之外加上输入的号...
.NET领域驱动设计—初尝(疑问、模式、原则、工具、过程、框架、实践)
1.1.疑问 1.1.1.UML何用1.1.2.领域建模 1.2.模式1.3.原则1.5.过程1.6.框架1.7.项目演示 最近在研究DDD颇有收获,所以整理出来跟大家分享,共同进步! 我们在设计业务系统的时候都会存在一个非常棘手而又无法回避的问题“业务扩展性”、“业务灵活性、”面向对象化“,尽管我们熟练掌握设计思想、设计模式、设计原则等等关于如何设计灵活性的系统设计理论,但是
机器学习疑问整理
回答一: 感觉logistic模型的优点有如下: 1. logistic是线性模型,在相同的条件下线性模型的稳定要优于非线性模型; 2. logistic模型的效果评价除了验证数据集外,还有统计学的验证,感觉更严谨; 3. logistic是基于统计学原理的,更容易让统计和数学背景的人接受; 4. 模型参数的解释更科学,比如某变量的影响直接用发生比就能解释; 5.
关于人工智能的一些想法和疑问
假设: 多元学习:多维度输入比少维度/单维度输入的学习过程要有效的多 图像识别/事物分辨:X只学习了A, 分辨B是不是A 花了时间 t1, Y学习了A和B,分辨B是不是A花了时间t2, t2 应远小于 t1 ...
【JAVA】来自Java编程题的疑问
Java问题 1.System.out.println((int)(char)(byte) -1); 结果是? https://blog.csdn.net/pmcasp/article/details/80746598 -1不在表范围之内,怎么看啊?涉及到-1是补码,可以去看看基础书。 ...
程序分层领域模型规约中各种实体类命名(DO、BO、DTO、VO)的意义
DO( Data Object):与数据库表结构一一对应,通过DAO层向上传输数据源对象。 DTO( Data Transfer Object):数据传输对象,Service或Manager向外传输的对象。 BO( Business Object):业务对象。 由Service层输出的封装业务逻辑的对象。 AO( Application Object):应用对象。 在Web层与Service层之...
关于接口封装Dto类
首先要明白接口文档返回的是对象还是集合list   data:{“ ”}        object   data:[{ },{ }]        list eg1:返回结果示例    {  "data": [          {“productCode” : ” 1”,“productName”:”产品A ” ,”count” : 12},          {“productCode”...
关于DTO分层作用
DTO作用
java 深入了解DTO及如何使用DTO
看了几套源码,其中都有用到DTO,这篇文章主要来谈论一下DTO使用的场合及其带来的好处。 在传统的编程中,我们一般都是前台请求数据,发送到Webservice,然后WebService向数据库发出请求,获取数据,然后一层层返回;模型如下: 这种比较原始的请求方式带来的缺点有很多,多次 请求耗费一定的网络资源,减慢效率。如果一次性返回整个实体类,还可能造成数据库表结构的泄漏。 采用DTO模
what、which的疑问代词_18
今天我们要讲一讲疑问词,它们会让你知道如何用英语来提问。 我们来看看所有的疑问词: What           Where Which         Why How            When Who            疑问词非常重要、非常有用而且使用非常简单。它们用来组成那些表明想获得何种信息的问句。 这次,我们将重点放在"what"和"which"上面。 当存在...
放眼2018年,我们对虚拟现实产品有五大疑问
(52VR大幅修正了原译文的翻译错误,增添不少必要文段,并作润饰)       2017年对VR来说是一个繁忙的一年,虽然可能不像你预料的那样。VR头显价格下跌引起大家躁动,开发商们承认在VR行业里干不动(比如CCP公司),Oculus频繁占头条和别人打官司,当然了,也不全都只有坏事儿:头显价格下降了销量上升了,重要的游戏发布了。不过还是让整个行业感受到了危机感,就这样我们进
关于js的几个疑问
1)什么是作用域(scope) 2)什么是全局和局部作用域 3)什么是命名空间和作用域的区别 4)什么是this关键字且作用域对其的影响 5)什么是函数作用域,词汇作用域 6)什么是闭包 7)什么是公有和私有作用域 8)如何理解和创建上述内容 9)什么是作用域
用户满意您的产品吗?20个用户体验调查问题给您答案
毫无疑问,用户体验调查是一种大规模采集用户反馈信息的有效方法。任何企业里,尤其在发布全新产品或进行产品迭代时,用户体验调查都可以派上用场。用户调查种类多样,提问式的用户调查因其成本低,操作简洁,往往是进行用户调查的一个重要途径。那如何做好用户体验调查呢?关键点在于问题的设置。本文我总结了20多个最常用的用户体验调查问题,希望能对获取有效的用户反馈提供帮助。用户体验调查的相关问题本文也会略作阐述,为...
敏捷开发中的问题
有三种方式去演化我们的系统。1.改变实现或者增加新的实现来替换旧的。2.改变接口。3.增加接口。   一.先说说我对多态的理解:    多态大部分都是运行时多态,也就是说已经形成了.exe文件或者.jar文件后,仍然有办法去影响代码的运行!    但是,这仅仅是开发类库的人要考虑的问题,因为他无法去改变exe文件。     反面教材:微软系统中的Ex结尾的函数一大堆,就是相当于扩展了原有的系
获取已存在的dto的serialVersionUID
偶然间发现有个系统的对外交互的实体对象之前没有显示的声明该类的序列化版本id 。为了后续的代码升级考虑,打算对所有的dto 做一次升级 。 但是,考虑到之前这些dto对象已经被外围的多个系统使用 ,贸然的添加新的VersionId 可能会导致反序列化的失败 。稳妥起见, 打算先计算出系统dto目前在序列化时,系统默认生成的versionId , 然后把获得的id 添加到老的dto中。老的dto...
EF+Mapper结合使用实现Dto到实体类再到数据的(框架模型基础实现)
EF+Mapper结合使用实现Dto到实体类再到数据的(框架模型基础实现)
DO、DTO和VO分层设计的好处
在Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念中介绍过Java中的各种模型概念。 在这里简单再总结一下: 在日常的项目开发中,VO对应于页面上需要显示的数据(表单),DO对应于数据库中存储的数据(数据表),DTO对应于除二者之外需要进行传递的数据。 很多人可能对VO和DTO并不是那么熟悉,相反对DO却比较熟悉,那是因为在很多项目中由于种种原因
DTO剖析
DTO定义 DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,泛指用于展示层与服务层之间的数据传输对象。 数据传输对象是一种设计模式之间传输数据的软件应用系统。数据传输目标往往是数据访问对象从数据库中检索数据。数
大数据疑问总结
1.Storm与Flink怎样写出符合并发的程序?静态与动态,不变缓存的尽量加载一次; 2.封装与模块化思想?类与方法?示例,一次编写,到处运行(过滤港口和锚地代码); 3.对象序列化?storm与flink中的区别,各个-组件之间的序列化问题;【各个算子是否需要序列化,怎样避免序列化】 4.内存中怎样减少FullGC,对象复用; 5.Flink中初始化几次,开启并发的情况呢,放在A: prepa...
关于深度学习理论方面的一些疑问
1、“玻尔兹曼机(Boltzman Machine)”  在深度学习里到底有什么用? 答:我是在看了“Deep Learning(深度学习)学习笔记整理系列之(六)”这篇博客时看到的关于玻尔兹曼机的东西,它在深度学习里的用处:Deep Learning假设神经网络是多层的,首先用Boltzman Machine(非监督学习)学习网络的结构,然后再通过Back Propagation(监督学习
关于Storm的一些疑问解答
Q1: 出现下面的问题怎么解决? 2011-12-26 11:44:21 worker [ERROR] Error on initialization of server mk-worker java.lang.UnsatisfiedLinkError: /usr/local/lib/libjzmq.so.0.0.0: libzmq.so.1: cannot open shared objec
领域驱动设计——浅析VO、DTO、DO、PO的概念、区别和用处
本篇文章主要讨论一下我们经常会用到的一些对象:VO、DTO、DO和PO。 由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念:   概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 DTO(Data Transfer Object):数据传输对象,这个概念
排队论中几个问题的探讨
本文提出了排队论的几个问题,并且对此做了一些讨论,给出了本人对此的看法
关于区块链的10个常见问题(转)
问题1:区块链最近这么火,能否简单讲讲什么是区块链? 回答:区块链技术其实并不复杂,简单点说,区块链就是把加密数据(区块)按照时间顺序进行叠加(链)生成的永久、不可逆向修改的记录。(可以不用说下去了,太深奥了谁也听不懂。)举个例子你也许能明白。以前亲戚之间借钱经常搞得很混乱。因为大家都是亲戚,所以也不愿意搞得太清楚,也不会签合同什么的,这就导致出现很多后续的麻烦。比如你家借我家2万块钱,到现在也...
BO与DTO的区别
业务对象(Business Object,BO)与数据传输对象(Data Transger Object, DTO)的区别: 1)   业务对象同时包含了数据和行为,是一个可以参与到领域逻辑中的完整对象。 2)   DTO更像一种值对象,即一系列数据的容器而没有相关的行为。 3)   为了序列化,业务对象中的数据会复制到DTO中。 4)   DTO并不仅仅是领域对象去掉了行
5个有关区块链技术的问题可以迅速解决
       人工智能和机器人的革命证明人类已经发生了巨大的飞跃。我们认为托马斯爱迪生是发明和创新的缩影,但事实是,即使他今天会访问世界,他也会发疯。十年前,“.com”繁荣以一种人们无法想象的方式震撼了世界。许多人都认为它会把所有在场工作带走。相反,它最终创造了普通人无法想象的途径。       区块链技术是即将改变how.com过去工作方式的途径之一。它已经导致许多行业选择其平台并取得重大突破...
DTO模式的研究
Java编程
PO、VO、BO、DTO、POJO、DAO、DO之间的关系
DO: domain object持久对象就是从现实世界中抽象出来的有形或无形的业务实体。 PO: persistant object持久对象 最形象的理解就是一个PO就是数据库中的一条记录。 好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。 BO: business object业务对象 主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其它的对象。 比如一个简历,...
关于VARIANT数据结构的一点疑问
    今天在使用vector结构存储的时候,发现push_back时的数据没有问题,但是通过下标或迭代器取出来的时候出现了数据不匹配的情况。具体原因还待研究。    由于时间的关系,我换了一种方式,用vector结构存储,具体过程如下。    VARIANT * pVal;    pVal = (VARIANT *)CoTaskMemAlloc(sizeof(VARIANT));     VariantInit(pVal);    hr = pclsObj->Get(vec_parameter[i],
Java Web开发 之VO、PO、TO、SOA、DTO等收集
DAL(数据访问层) SOA Service Orient Architecture 面向服务的设计 ---------------------------------------- PO:全称是persistant object持久对象最形象的理解就是一个PO就是数据库中的一条记录。好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。BO:全称是business ob
JavaDto对数据的封装
最近用到javadto扩展字段,解决了要得到的账号字段值在当前数据表中不存在而存在于另一张表。 1.新建dto扩展账号字段 package com.xxx.admin.member.entity; import java.io.Serializable; import com.dfth.member.members.entity.Member; public class Me
数据结构的三个问题
1、在数据结构中,讨论的数据一般是指? 答:非数值数据 2、顺序存储结构中的数据元素 之间的逻辑关系是由什么表示的?链接存储结构中的数据元素之间的逻辑关系是由什么表示的? 答:存储位置、指针 3、在一般情况下,一个算法的时间复杂度是什么的函数? 答:问题规模
spring boot框架搭建-7 建立数据传输对象dto以及映射ModelMapper
对于前后端数据交互的时候,有时候不一定对应上实体类,这时候我们就需要建立dto package com.example.wx.dto; import lombok.Data; import lombok.NoArgsConstructor; /** * Created by w on 2019/3/9. */ @Data @NoArgsConstructor public class Us...
DTO 通用分页工具类
package com.softeem.JDBC.proc; import java.util.List; public class PageUtils { /** * DTO 通用分页工具类 * * @author mrchai */ private int currentPage; // 当前页 private int pageSize; // 每页大小 pr
实现java表单提交时请求参数与dto的映射
一般在servlet或controller里获取前台请求的数据时时通过request.getParam的方式获取,此方式会产生大量的模板式的重复代码,整体代码也不简洁。为此各种框架都做了一些处理,使得开发人员从这种无聊的工作中解放出来,比如spring在handle方法中增加object参数,struct在action的execute方法中增加form参数。应用系统开发人员直接从object、fo
DTO(领域数据传输对象)之我见
一、DTO的产生及优点 最初,我们设计程序的时候直接创建实体类,然后再创建一个封装返回值的jsonObject类,进行业务处理的时候直接利用实体类传递数据,然后封装在jsonObject类里面返回,这样的话就存在以下几个问题: (1)暴露数据库表结构 如果黑客通过前端的json对象解析出来了你的表结构,然后就可以结合表结构和请求命令模拟发送攻击请求窃取你的信息。 (2)后台处理僵硬 比方说我要根据...
java DTO 详解
java DTO 详解 java DTO 详解 java DTO 详解 java DTO 详解
论dto的必要性
以前刚开始工作的时候,一直纳闷展示数据为什么要用对象dto来展示,而不直接用对象,后来百度发现主要为了隐藏不需要展示的属性,用dto展示前端需要的数据,entity对应表.   刚刚敲代码的时候发现, 当更新数据用了事务,本来我想更新的是user.getEmail()的数据,但是在执行更新方法userDao.saveAndFlush(updateUser)后,因为事务的存在,jpa是只有等整个
7本关于设计模式的pdf书籍
7本关于设计模式的pdf经典书籍、 7本关于设计模式的pdf经典书籍、 7本关于设计模式的pdf经典书籍、 7本关于设计模式的pdf经典书籍、
文章热词 设计制作学习 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 数据库课程设计疑问 数据库课程设计疑问