实际上我正在构建REST API,并且有许多不同的方法可以返回JSON数据。但我想知道一个好的,可以及时扩展并处理多对多的关系,以及深层关系(文章 - >有类别 - >有部门 - >等等。)
一些选项:
1)DTO模式并手动构建它,处理请求的“fields”参数。
2)实体类的@JsonView(View.Example.class)
。
3)Spring Boot(Jackson)上的默认JSON序列化。
我认为更具伸缩性的选择是第一,我可以处理多对多的关系和其他事情...你怎么看?
答案 0 :(得分:0)
我认为最好的方法是混合选项1和3。
您应该有一个转换器将实体转换为响应DTO。在那里你可以映射你所有的深层关系。只需确保在转换器启动之前加载了所有深层关系,以防止多个数据库读取。
当你完成后,杰克逊将完成这项工作。