【发布时间】:2018-01-31 16:55:57
【问题描述】:
我有一个 Java 类 (MyResponse),它由多个 RestController 方法返回,并且有很多字段。
@RequestMapping(value = "offering", method=RequestMethod.POST)
public ResponseEntity<MyResponse> postOffering(...) {}
@RequestMapping(value = "someOtherMethod", method=RequestMethod.POST)
public ResponseEntity<MyResponse> someOtherMethod(...) {}
我想忽略(例如不序列化它)仅一种方法的属性之一。
我不想忽略该类的空字段,因为它可能会对其他字段产生副作用。
@JsonInclude(Include.NON_NULL)
public class MyResponse { ... }
JsonView 看起来不错,但据我了解,我必须用 @JsonView 注释类中的所有其他字段,除了我想忽略的那个听起来很笨拙的字段。如果有办法做类似“反向 JsonView”的事情,那就太好了。
关于如何忽略控制器方法的属性的任何想法?
【问题讨论】:
-
您可以使用@JsonIgnore,但这适用于所有方法。也许将其子类化并忽略?
标签: java json spring spring-mvc jackson