对象映射字段

时间:2016-12-16 08:59:18

标签: java json jackson fasterxml

我有一个对象类A:

  public class A {
    private Long id;
    private String name;
    private String mail;
    private String moreData;
    // ...
  }

B级:

  public class B {
    private Long id;
    private String name;
    private String crc;
    // ...
  }

我可以使用jackson提供从对象A到B的字段映射,将对应字段复制到目标对象中。

我需要来自对象

  A {
    Long id = 23L;
    String name = "name";
    String mail = "mail";
    String moreData = "moreData";
    // ...
  }

获取目标对象

  B {
    Long id = 23L;
    String name = "name";
    String crc = mull;
    // ...
  }

在对象映射处理之后......

是否可以以简单的方式使用 com.fasterxml.jackson 实施解决方案?

1 个答案:

答案 0 :(得分:1)

当然可以。没有完全理解你为什么要这样做,或者我认为可能有更有效的方式而不是转换为JSON然后回来,但如果你想使用杰克逊,我会这样做:

ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
B b = objectMapper.readValue(objectMapper.writeValueAsString(a), B.class);

希望这会有所帮助。应该做的工作。关键是要告诉杰克逊不要在未知的属性上失败,这样就会丢掉那些你不确定的东西。