Java 中怎么处理类似类对象太多的情况

2021-04-09 17:01:37 +08:00
 dajj
在一个创建请求中, 需要一个类 A 获取用户输入,
然后需要一个类 B 传给 mybaits 进行数据库查询
然后需要一个类 C 作为查询结果,
最后还有一个类 D, 作为最终返回给客户端的结构
如果需要查询的时候,不查某些字段,可能需要类 E 作为返回结构

这几个对象 A,B,C,D,E 字段很很多相同的,但是也有少量不同的字段

这样定义太多重复的字段, 当修改某个字段的时候,需要修改很多个文件。
当然也考虑过继承, 在父类中定义共同的字段。 但是也有问题, 首先很不直观,因为这些类仅仅字段不同,并没有逻辑上的关联关系, 另外只能取最小的集合,很难满足需求。

还有其它方案可以简化这种情况吗,不用定义这么多个类似的类?
1285 次点击
所在节点    Java
4 条回复
jotpot
2021-04-09 21:08:34 +08:00
改的最多的应该是 cd 吧。a 是用户输入的,b 是查询条件,c 是数据库 domain,d 是 vo 输出,每个作用不一样,还是都改吧,要不你把 cd 合并了,再不行把 acd 合并了,项目规模小的话再再不行就把 abcd 合并了。
liian2019
2021-04-14 18:26:23 +08:00
pojo 一把嗦可以解决你的困扰
ychost
2021-04-19 10:10:34 +08:00
确实,还有查询条件 E 等等,多人协作一般都会这样严格划分减少沟通成本,和重构风险,一般那种自己一个人维护的项目就没必要了,保持 DO 干净即可,其它的公用一个 POJO,当有差异的时候,加 Extension 扩展字段,每种领域维护自己的扩展字段就好,其余的保持公用
sqmwin
2021-04-28 00:07:24 +08:00
A 、B 、C 可以整合为一个对象吧,形成 X,C 把 X 作为字段组合进来,不查的字段用字段多的对象也没问题吧,前端按照文档取值就行了吧,或者序列化时指定不需要查的字段不进行序列话

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

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

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

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

© 2021 V2EX