Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json Jackson-POJO映射_Json_Spring Mvc_Jackson - Fatal编程技术网

Json Jackson-POJO映射

Json Jackson-POJO映射,json,spring-mvc,jackson,Json,Spring Mvc,Jackson,我试图通过jackson将以下json映射到pojo。我有第一部分工作(直到第节)。然而,第二部分我不确定如何将“section1”映射到这里可能包含的pojo或最佳实践 通过rest调用接收的json: { "val1":100, "val2":2.75, "junk":[ { "junk1":36, "junk2":78 }, { "junk1":36, "junk2

我试图通过jackson将以下json映射到pojo。我有第一部分工作(直到第节)。然而,第二部分我不确定如何将“section1”映射到这里可能包含的pojo或最佳实践

通过rest调用接收的json:

{
   "val1":100,
   "val2":2.75,
   "junk":[
      {
         "junk1":36,
         "junk2":78
      },
      {
         "junk1":36,
         "junk2":78
      }
   ],
   "section1":{     // <- There will be another section2, section3,...
      "val1":100,
      "val2":2.75,
      "junk1":[
         {
            "junk1":36,
            "junk2":78
         },
         {
            "junk1":36,
            "junk2":78
         }
      ],
      "junk2":[
         {
            "junk1":36,
            "junk2":78
         },
         {
            "junk1":36,
            "junk2":78
         }
      ]
   }
}
{
“val1”:100,
“val2”:2.75,
“垃圾”:[
{
“junk1”:36,
“junk2”:78
},
{
“junk1”:36,
“junk2”:78
}
],

“section1”:{//将“section”设为另一个类,如果每个部分(以及每一块垃圾)的内容在内部具有相同的结构,则也可以将“section”设为“junk”

public class view
{
    private int val1;
    private float val2;
    private List<Junk> junk; //<-Ok as I just pass to another class
    private Section section1;
    private Section section2;
    ... etc ...
}

public class Section {
   private int val1;
    private float val2;
    private List<Junk> junk; //<-Ok as I just pass to another class
}

public class Junk {
   private String junk1;
   private Strign junk2;
}
公共类视图
{
私人int val1;
私人浮动val2;

私人列表垃圾;//请注意,您可以指示应忽略“垃圾”。有两种方法可以做到这一点;一种是:

@JsonIgnoreProperties({"junk"})
public class MyClass { ... }

这样做的好处是不需要内存来存储匹配的数据;并且可以加快解析速度(不是一吨,而是一些;解析器仍然需要解码JSON来跳过它等等).

好的,很酷!我曾尝试使用聚合类进行映射,但它不起作用。因此,我不确定jackson是如何映射包含的类的。这就是我要寻找的…我会试一试!Thx.Nice。映射的原因是每个垃圾部分中都会有多个junk1、junk2、junkx。我不存储它的原因是因为我不关心任何问题关于这些值,我只是传递了垃圾json和内容。我在我的原始帖子中没有明确说明。好吧。然后忽略我的垃圾类。不管哪种方式都只是测试了它。按照广告的方式工作。太棒了!谢谢Lee Meador!:)你的json不会导致gud对象…你对节号或垃圾号有限制吗?非常酷!我有一个用例,我正在构建一个用于测试的json负载,其中只有一半的负载被真正映射。另一半是空白的,因此这将在垃圾邮件和我的另一半json负载用例中完美工作。Thx!
@JsonIgnoreProperties({"junk"})
public class MyClass { ... }