真诚发问,对于 java 如果多个接口想共用一个 domain 层,但是最后接口返回的字段又不一样,但这些字段都是这个 domain 的子集(排列组合),这种情况应该怎么办?
比如:
publica class A { private String name; private Long type; private Long age; private Long height; private Long weight; private String attr; ........ }
对于接口 1 ,我期望的返回应该是:
{ "data": [ {"name": "1", "type": "1"}, {"name": "1", "type": "1"}, {"name": "1", "type": "1"} ] }
对于接口 2 ,我期望的返回应该是:
{ "data": [ {"name": "1", "age": "1", "height":"1"}, {"name": "2", "age": "2", "height":"2"}, {"name": "3", "age": "3", "height":"3"}, ] }
对于接口 3 ,我期望的返回应该是:
{ "data": [ {"weight": "1", "attr": "1", "age":"1"}, {"weight": "2", "attr": "2", "age":"2"}, {"weight": "3", "attr": "3", "age":"3"}, ] }
等等等,实际上可以说接口的返回是 A 这个类属性的随机排列组合,而我又不想给每个接口单独定义 VO 的形式,所以请问我该怎么办?