2017-05-08 35 views
0

我有JSON文件如下。寻找这个JSON文件我想创建JAVA类,但我与它中的数组混淆。我创建了一个名为“Period”的类,其字段为带有setter和getters的“SLOT,SUB,TUTOR”。我可以在另一个名为“Day”的类中为“Period”的数组创建LIST <>吗?如何创建看JSON文件的JAVA类?

{ 
    "BEX1": { 

     "1SUNDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "2MONDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "3TUESDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "4WEDNESDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "5THURSDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "6FRIDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ], 
     "7SATURDAY": [{ 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, 
      { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      }, { 
       "SLOT": "1", 
       "SUB": "NA", 
       "TUTOR": "NA" 
      } 
     ] 
    } 
} 
+0

JSON是JavaScript语法,而不是Java。无法在Java中指定常量映射/字典,因此您只能创建Map并手动添加条目。 – Robert

+0

是的,你可以用许多不同的方式使用'Gson'很容易地映射它。这篇文章有很多建议。不要只看看被接受的答案。 http://stackoverflow.com/questions/5490789/json-parsing-using-gson-for-java – jiveturkey

回答

0

下面应该工作:

class Bex { 
    Map<String, Day> mapper; 
} 

class Day { 
    List<Period> periods; 
} 

Class Period { 
    String slot; 
    String sub; 
    String tutor; 
} 

注意:您可能需要像@JsonProperty("TUTOR")纠正映射,如果你正在使用jackson