提问者:小点点

使用响应实体的动态JSON对象-Spring


我使用Spring的return ResponseEntity来返回HTTP响应。

当在实体中传递POJO或MAP时,它将其转换为JSON对象。喜欢

  return new ResponseEntity<Object>(result, HttpStatus.OK);

结果可能是 POJO 类(获取器和二次生成器)

我正在用

 <bean id="jsonMessageConverter" class="org.springframework.http.converter.json.GsonHttpMessageConverter ">
</bean>

现在我想要的是,我将在请求中获得响应字段列表。我只想仅使用这些字段响应请求。

对于Ex,如果我收到的响应字段为name, id。那么对象必须只包含这两个。

 {
 "name":"test",
 "id":15
 }

我不能使用@jsonignore或@explore注释。因为我希望JSON可以通过编码动态完成。

可以通过覆盖 GSON 转换器方法或使用 AOP。

有没有办法配置jackson的适配器以基于字段创建对象。


共1个答案

匿名用户

如果你可以切换到jackson,也许你可以使用我写的这个小扩展来实现这个目的:

https://github.com/Antibrumm/jackson-antpathfilter