[求助] Mybatis 自定义 Mapper 查询需要返回的字段 entityDO 并没有怎么办?

3 月 18 日
 felix9ia

方案 1:在 DO 中冗余字段 + @Transient

在 DO 中增加额外字段,用于承载转换后的数据(如 URL 、格式化字段等),并通过 @Transient 标注为非持久化字段。

缺点:

方案 2:Mapper 直接返回 VO

mapper 层通过 select 直接返回 VO (或 CO )。

缺点:

方案 3:引入中间 DTO ( DO → DTO → VO )

在 DO 和 VO 之间增加一层 DTO ,作为数据转换的中间载体。

缺点:

其他不太靠谱的方案

1069 次点击
所在节点    问与答
3 条回复
leeqingshui
3 月 18 日
追求完美没有意义
要快就方案 1,时间多就方案 3
哪种方案都会冗余,不过是多看会代码的事情
felix9ia
3 月 18 日
@leeqingshui 明白,我以为大家会有更好的方案....那如果是 JOIN 2 张表的结果,似乎就不能选方案 1 了,只能选方案 3 了吧?
ymy3232
3 月 18 日
一直都是方案 3 ,以前手写都写过来了,现在有了 AI 更快。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1199196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX