dto与dto相互转换_在DTO上

本文探讨了在项目中使用DTO(数据传输对象)时,关于DTO与实体之间的转换策略。作者提到了三种方法:始终使用DTO、仅在结构明显不同时使用DTO以及不使用DTO。建议采用中间方法,避免过度冗余和维护难题。还讨论了映射方法,如专用映射器类、构造函数和声明性映射,并强调了避免在DTO中引入业务逻辑和保持代码简洁的重要性。
摘要由CSDN通过智能技术生成

dto与dto相互转换

通常使用DTO或 数据传输对象 。 什么不是s? 众所周知,它们源自DDD(域驱动设计)。 在那里很有意义–域对象具有状态,身份和业务逻辑,而DTO仅具有状态。

但是,当今许多项目正在使用贫血数据模型方法( 我认为 ),并且仍在使用DTO。 每当对象“离开”服务层或“离开”系统时(通过Web服务,rmi等),都将使用它们。 有三种方法:

  • 每个实体至少具有一个对应的DTO。 对于视图层中的不同方案,通常不止一个。 在列表中显示用户时,您会有一个DTO,而在“用户详细信息”窗口中显示时,则需要一个扩展的DTO。 我不赞成这种方法,因为在很多情况下,DTO和域结构具有完全相同的结构,因此,存在很多重复的代码+冗余映射。 另一件事是多个DTO的可变性。 即使它们与实体不同,它们在一个或两个字段之间也彼此不同。 为什么重复是一件坏事? 因为要在两个地方进行更改,所以当数据通过多个对象时,很难跟踪问题,并且因为它是重复的。 在同一项目中复制和粘贴是一种罪过。
  • 仅当DT
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值