在java中将一个json转换为另一个具有不同字段的json

时间:2017-07-02 13:53:59

标签: java json deserialization

例如我有下一个JSON:

{"name":"Joe"}

表示为Name.java实体:

public class Name
{
   @JsonProperty("name")
   public String name;
}

我希望在解开其余响应的过程中将这个json转换为另一个。我想转换的那个看起来像这样:

public class Surname 
{
   @JsonProperty("surname");
   public String surname;
}

我不想在整个类上使用@JsonDeserializer,事实上@JsonDeserializer对方法不起作用,因为属性有不同的名称,所以如何将第一个实体转换为第二个实体,使用一些@JsonCreator还是什么?感谢。

1 个答案:

答案 0 :(得分:0)

你可以使用,

   :my is used to namespace @article. With params[:my_article] form elements can be accessed in controller

编辑:

使用注释,您可以尝试

ObjectMapper mapper = new ObjectMapper();
Name name = mapper....// unmarshalling and object mapping

JsonNode node = mapper.valueToTree(name);

// copy the value of name and remove the key, add a new key with same value

String n = node.get("name");
node.remove("name");
node.put("surname", n);