`
netxdiy
  • 浏览: 728927 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

DTO简单总结

阅读更多
 DTO就是数据传输对象(Data Transfer Object)的缩写。
  DTO模式或称VO模式,是指将数据封装成普通的JavaBeans,在J2EE多个层次之间传输。
  DTO类似信使,是同步系统中的Message。
  该JavaBeans可以是一个数据模型Model。
  常见的方式就是为实体对象建立一个Model类,该类只包含这个对象所有字段的getter和setter。例如用户User实体有name, password字段,则建立一个UserModel类,public方法有getName,setName,getPassword,setPassword。这样就可以把UserForm作为参数传给其他函数。
  Data Transfer Object(DTO)模式是为了解决这样的问题:例如我们的一个实体Bean,其对应的数据库表的字段非常多,那么我们在其Home接口的create方法中以及Enterprise Bean类的ejbCreate方法中的参数可能就会很多,导致我们的这些方法不够elegant。我们可以通过定义一个简单的Java类(实现Serializable接口),其中定义一些属性,并提供相应的get和set方法来解决上面的问题。
  Model 、 Domain Object以及DTO关系:
  1. 分析提炼Model是系统设计之起端
  2. 系统设计之初,三者基本统一
  3. 系统复杂化后,DTO可能是多个Model组合实现;



,不要把DTO传递到Web层,而在Action里面就应该做转换,把DTO转换到ActionFormBean上去
分享到:
评论

相关推荐

    JAVA中的POJO、VO、PO、DO、DTO都是什么?有什么区别?

    DTO不包含任何业务逻辑,只是简单地封装数据,以避免跨层的数据耦合。在分布式系统或服务之间进行数据交换时,DTO是常用的选择。 总结来说,这五种对象各有其应用场景和目的: - POJO是基本的Java对象,没有特定...

    po vo dto bo to

    #### 八、总结 在Java企业级应用开发中,合理地使用这些对象可以帮助我们更好地组织代码,提高代码的可读性和可维护性。PO、VO、TO、BO、DAO与POJO各自在系统架构的不同层次中扮演着不同的角色,相互之间既有联系又...

    Python库 | py_dto-0.2.0-py3-none-any.whl

    py_dto库的安装非常简单,可以通过Python的包管理器pip直接下载并安装。对于提供的whl文件,可以使用以下命令进行安装: ```bash pip install py_dto-0.2.0-py3-none-any.whl ``` 安装完成后,即可在Python代码中...

    Javabean与DTO的区别.docx

    总结一下,JavaBean、DTO、POJO和PO各有其特定的用途: - JavaBean主要用于封装业务逻辑和数据,方便在JSP中使用,同时也适用于代码复用。 - DTO专注于数据传输,不包含业务逻辑,常用于系统间的数据交换。 - POJO是...

    Swagger_Dto_to_Entity_Mapstruct

    总结来说,"Swagger_Dto_to_Entity_Mapstruct"项目展示了如何利用MapStruct库自动化处理Swagger DTO到Java实体类的映射,从而提高开发效率,降低错误率,并使得API设计更加清晰和规范。对于Java开发者,尤其是涉及...

    [其他类别]数据导入与数据导出Excel_dtocsvrtodataset.zip

    总结起来,数据导入与导出是数据处理流程中的基本操作。通过使用.NET Framework提供的工具和库,我们可以方便地将Excel数据转换为CSV,以及将CSV数据加载到DataSet中,从而在程序中进行进一步的数据分析和处理。在...

    2016年 年度个人总结程序猿

    ### 2016年度个人总结程序猿的关键知识点 #### 一、技术层面的收获 1. **需求分析** - **重要性认知**:在项目执行过程中,深刻认识到不可低估任何项目的规模,即便是看似小型的项目也需投入充分的关注与细致的...

    动态ASP.NET Web API控制器-第1部分。动态DTO

    总结起来,通过动态ASP.NET Web API控制器和ExpandoObject,我们可以创建适应性强、灵活应变的服务。这种方式有助于减少代码维护工作,特别是在面对不确定或频繁变动的数据模型时。同时,动态DTO也能为客户端提供...

    用友U9列表、查询开发.pdf

    - **使用场景**:DTO查询主要用于简单的数据展示,例如报表、统计等。 - **开发过程**: - 在查询数据源选择窗体中选择DTO数据源。 - 使用UBF查询设计器直接设计查询DTO。 - 生成UI端代码及BP端代码。 - **技术...

    20-C-ValueObject-Code.zip

    在C#中,DTO通常定义为简单类,包含一系列属性,没有行为(方法)。例如,一个用户DTO可能是这样的: ```csharp public class UserDto { public int Id { get; set; } public string Name { get; set; } public ...

    简易代码生成器

    【简易代码生成器】是一个专为...总结,【简易代码生成器】作为.NET开发中的实用工具,能够显著提升开发效率,降低代码维护成本。通过理解和熟练运用代码生成器,开发者可以更好地聚焦于业务创新,而非基础代码的编写。

    IBatisNet.DataMapper之简单三层_aspx开发教程.rar

    **总结** "IBatisNet.DataMapper之简单三层_aspx开发教程"是一个指导开发者使用IBatisNet在.NET平台上构建三层架构Web应用的教程。通过学习这个教程,你可以掌握如何利用IBatisNet进行数据库操作,如何组织三层架构...

    Struts、Spring、Hibernate&Ajax;学习笔记总结

    ### Struts、Spring、Hibernate&Ajax 学习笔记总结 #### Struts 部分 **Struts** 是 Java 开源框架中最早出现且最具影响力的框架之一,它出自 Apache 组织,是 Java Web 应用开发的标准之一。Struts 以 MVC(Model...

    微服务API设计的实践与思考总结.docx

    以下是对微服务API设计的实践与思考的详细总结: 1. API先行策略:在敏捷开发环境中,API设计往往先于服务实现。在需求明确后,开发人员应迅速完成API设计,以便调用方可以提前Mock接口进行测试和准备工作。然而,...

    Java和bean(VO)、dao、Servlet、jsp的综合总结复习

    本文将对这些技术进行深入的综合总结复习。 首先,JavaBean是Java编程中的一个概念,它是符合特定规范的Java类,通常用于封装业务逻辑或数据。在JavaWeb开发中,Value Object(VO)或者称为Data Transfer Object...

    Strutst2框架的总结

    以下是对Struts2框架关键知识点的详细总结: 1. **默认Action**:如果没有指定Action,系统会默认使用`ActionSupport`作为基础Action。`ActionSupport`提供了基本的错误处理和验证功能。 2. **命名空间(namespace...

    简易班级管理系统JSP+MySQL

    总结,"简易班级管理系统JSP+MySQL"是一个适合初学者实践的项目,它涵盖了Web开发的基础知识,如JSP、MySQL和JAVABEAN的使用。通过学习和改进这个系统,可以为后续的Web开发学习打下坚实的基础。

    工作经验,学习到的知识碎片整理

    总结来说,了解HTTP请求方法及其在Spring中的应用,以及理解JavaBean、POJO、VO和DTO的区别和联系,是成为一名合格的Java开发者的基础。这些知识碎片在日常工作中会频繁使用,通过整理和学习,可以提高开发效率和...

    EntityFramework.zip

    总结来说,"EntityFramework.zip"中的资源很可能是关于如何在.NET环境中使用Entity Framework进行数据库操作和实体与DTO之间映射的实例和指南。对于.NET开发者来说,理解并掌握这些概念和技术对于提升开发效率和代码...

    J2EE_Patterns.ppt

    DTO模式用于在不同层之间传递数据,它是一个简单的JavaBean,充当数据载体。当系统复杂度增加时,一个DTO可能包含多个数据模型的组合。 4. **Model与MDA(Model Driven Architecture)**: 在软件开发中,Model是...

Global site tag (gtag.js) - Google Analytics