java - 如何使用带有嵌套对象的@Jsonview 进行序列化

标签 java spring jackson json-view

我有一个类包含另一个类的集合。

class A{
 @JsonView(VerboseViewA.Minimal.class)
 String field1;
 @JsonView(VerboseViewA.Complete.class)
 String field2;
 @JsonView(VerboseViewA.Complete.class)
 Collection<B> bEntities;
}

class B{
   @JsonView(VerboseViewB.Minimal.class)
    String field2;
   @JsonView(VerboseViewB.Complete.class)
    String field3;
 }

当我使用 VerboseViewA.Complete 序列化 A 类时,我希望使用 VerboseViewB.Minimal 序列化集合 bEntities。

有办法实现吗?

最佳答案

这解决了我的问题。我不确定是否有更好的方法来解决这个问题。

 class A{
  @JsonView(VerboseViewA.Minimal.class)
  String field1;
  @JsonView(VerboseViewA.Complete.class)
  String field2;
  @JsonView(VerboseViewA.Complete.class)
  Collection<B> bEntities;
 }

 class B{
    @JsonView({VerboseViewA.Complete.class,VerboseViewB.Minimal.class})
    String field2;
    @JsonView(VerboseViewB.Complete.class)
    String field3;
 }

关于java - 如何使用带有嵌套对象的@Jsonview 进行序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23260464/

相关文章:

java - 对文件递归执行 Maven 命令

java - Spring Security 更改重定向 URL 以使用 HTTPS 而不是 HTTP

java ; jackson ;解析数组json字符串的数组

spring - 如何为 Spring SQS 定制 Jackson 序列化器

java - 是否有任何命令行函数可以从一个巨大的 Java 文件中返回主类的名称?

java - 使用JProfiler进行性能分析时,可以显示滑动窗口最后X秒 View 吗?

Java 程序产生不正确的输出。 (while 循环)

java - @Transactional 在 Spring Boot 中不回滚

java - 如何在bean方法中注入(inject)字段?

java - Jackson 无限递归处理查询