gpt4 book ai didi

java - 如何使用Jackson ObjectMapper将多个数据转换为Pojo

转载 作者:太空宇宙 更新时间:2023-11-04 15:00:06 25 4
gpt4 key购买 nike

我想将以下字符串/JSONObject 转换为 POJO,

{"list":["\r\n{\r\n\"id\":\"1\",\r\n\"protocol\":\"udp\",\r\n\"srcPorts= \":\"3000-4000    \",\r\n\"destPorts\":\"1790-2000\"\r\n}","\r\n{\r\n\"id\":\"2\",\r\n    \"protocol\":\"tcp\",\r\n\"srcPorts\":\"3000-4000\",\r\n\"destPorts\":\"1790-2000    \"\r\n}"],"user":"\r\n{\r\n\"name\":\"John\",\r\n\"address\":\"x.x.x.x\",\r\n\"email     \":\"john@p.com\"\r\n}"}

如何使用 Jackson ObjectMapper 转换为 Pojo。2个Pojo类如下。

上面字符串中的用户部分应映射到 java 文件 - User.java

public class User 
{
private String name;

private String address;

private String email;

public String getName()
{
return name;
}

public void setName(String name)
{
this.name = name;
}

public String getAddress()
{
return address;
}

public void setaddress(String Address)
{
this.address = address;
}

public String getEmail()
{
return email;
}

public void setEmail(String email)
{
this.email = email;
}
}

上面字符串中的 List 部分应映射到 java 文件 - TestCase.java

public class TestCase 
{
private String id;
private String protocol;
private String srcPorts;
private String destPorts;

public String getProtocol()
{
return protocol;
}

public void setProtocol(String protocol)
{
this.protocol = protocol;
}

public String getSrcPorts()
{
return srcPorts;
}

public void setSrcPorts(String srcPorts)
{
this.srcPorts = srcPorts;
}

public String getDestPorts()
{
return destPorts;
}

public void setDestPorts(String destPorts)
{
this.destPorts = destPorts;
}

public String getID()
{
return id;
}

public void setID(String id)
{
this.id = id;
}
}

最佳答案

以下代码应该有帮助。



类 ParseJson{

私有(private)用户用户;
私有(private)测试用例测试用例;

//getter 和 setter 方法
}
//然后调用objectMapper -
String jsonString = "";//Json输入
ObjectMapper 映射器 = new ObjectMapper();
ParseJson parsedJson = mapper.readValue(jsonString, ParseJson.class);

用户 user = parsedJson.getUser();
TestCase testCase = parsedJson.getTestCase();

关于java - 如何使用Jackson ObjectMapper将多个数据转换为Pojo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22680630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com