首页 > 解决方案 > 将 @RequestBody 与包装对象一起使用

问题描述

我正在使用entity - repository - service - controller架构。在控制器中,我想获得一个不由实体层表示的对象。我做了一些研究,找到了两种解决方案。

  1. 使用地图<String, Object>
  2. 使用包装类。

我的问题是:

  1. 在第二种情况下,我应该把包装类放在哪里?它是一个新实体还是我应该为包装类创建一个单独的文件夹?
  2. 拥有 DTO 和第二种方法有什么区别?

标签: spring

解决方案


Ans 1. 它根本不是实体,它只是一个响应包装器 DTO。我建议有 2 个包 * dto和 * entity。从 API 公开的类应该放在 * dto 中,而那些代表实体的类应该放在 * entity中。您可以进一步将 * dto划分为 * dto/request和 * dto/response。Ans 2. 我看不出有什么不同。将任何集合包装在响应 DTO 中以便为分页等元数据留出空间始终是一种好习惯。


推荐阅读