我有一个结构,我想在文件中使用JSON存储。没有任何实现类具有比给定的更重要的信息。
public class ItemExample implements IItem{
private ModelMap map;
private String name;
}
public class ModelMap {
private HashMap<Coord, IPartType> map;
}
public class Coord {
private int x,y,z;
}
public class PartExample implements IPartType {
private String name;
private Purity purity;
}
public Enum Purity{
}
我是创建JSON的新手,我一直在阅读Gson的工作原理,但我并不真正理解如何将这些示例翻译成我的案例。大多数例子都假设我还不知道某些方面的知识。
这是我开始为IPartType做的事情:
public class PartDeserialize<T> implements JsonDeserializer<T>{
@Override
public T deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
JsonObject content = json.getAsJsonObject();
String name = content.get("name").getAsString();
Purity purity = Purity.valueOf(content.get("purity").getAsString());
return new Gson().fromJson(content, typeOfT);
}
}
我将不胜感激。
每个请求可能的JSON示例:
{
"name" : "sword",
"map" :
{
"map" :
{
"1,1,1" : //string representation of Coord
{
"name" : "blade",
"purity" : "base" // string representation of Purity Enum
},
"0,0,0" :
{
"name" : "handle",
"purity" : "high"
}
}
}
}