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