Spring MVC中的部分响应

4
我们的RESTful应用程序需要支持“部分响应”以限制带宽。这意味着REST客户端告诉URI服务它感兴趣的资源字段是哪些。
例如:api/v1/users/123/fields=firstName,lastName,birthDate 我们使用Jackson解析器将我们的DTO转换为JSON结构。问题在于我们无法在运行时告诉它要“跳过”一些属性。我们需要创建一个具有可变数量属性的类才能实现此目的。但我不认为这在Java中是可能的,毕竟它是静态语言。
在搜索互联网时,我们发现了一些半解决方案,只需返回包含请求属性的java.util.Map或通过Jackson解析器过滤出属性。特别是后者似乎是一种“黑客解决方案”。似乎Spring MVC没有针对此问题提供开箱即用的解决方案...
在Java世界中是否有任何替代方案可用于解决此问题?

2
通常发送一个 Map 并不是一个坏主意。 - soulcheck
特别是由一些选定字段组成的实体在您的领域中并不代表具体的事物。 - soulcheck
https://dev59.com/9WYr5IYBdhLWcg3wVYsg#13792700 - madhead
1个回答

2

你了解Yoga吗?

Yoga扩展了JAX-RS和SpringMVC RESTful服务器,提供了GData和LinkedIn风格的字段选择器。

  • 在调用时选择要查看的字段
  • 在单个调用中导航实体关系以获取复杂视图
  • 在高延迟(例如移动)应用程序中更快的速度
  • 简化客户端开发
  • 可浏览的API

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接