【发布时间】:2012-07-24 11:33:32
【问题描述】:
我错误地发布了问题。我在这里正确地发布了问题......
我得到一个 json 字符串作为 HTTP 响应。我知道它的结构。如下:
public class Json<T> {
public Hits<T> hits;
}
public class Hits<T> {
public int found;
public int start;
public ArrayList<Hit<T>> hit;
}
public class Hit<T> {
public String id;
public Class<T> data;
}
“数据”字段可以属于任何类。我只会在运行时知道它。我会把它作为参数。这就是我反序列化的方式。
public <T> void deSerialize(Class<T> clazz) {
ObjectMapper mapper = new ObjectMapper();
mapper.readValue(jsonString, new TypeReference<Json<T>>() {});
}
但我收到一个错误 -
无法从 java.lang.class 访问私有 java.lang.class.Class()。未能设置访问权限。无法使 java.lang.Class 构造函数可访问
【问题讨论】:
-
为什么要重复这个问题(见stackoverflow.com/questions/11664894/…)?
-
如果你使用的是 scala,你可以这样做:stackoverflow.com/a/49998502/1009305
标签: java json jackson generics