我正在使用 Jackson 来读取 json 消息。我试图解析的值之一是 List,另一个值包含列表中数据的类型。这是我在 java 中创建的结构。
public class Message<T> {
private Timestamp time;
private RestAction action;
private String type;
private List<T> data;
}
通过 Class.forName();
我可以得到代表列表中数据的类。问题是我如何阅读列表。
最佳答案
更短的东西:
mapper.readValue(jsonString, new TypeReference<List<EntryType>>() {});
在哪里 EntryType
是对您希望在集合中保存的类型的引用。它可能是任何 Java 类。
例如读取 JSON 表示,例如 ["a", "b", "c"]
mapper 的第二个参数应该是 new TypeReference<List<String>>() {}
关于java - jackson 在通用列表中读取 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17979346/
相关文章:
json - 已启用 CORS,但在 POST JSON 时,预检响应的 HTTP 状态代码 404
javascript - 无法重新初始化 JQuery DataTable
eclipse - Jersey :找不到 Java 类和 MIME 媒体类型应用程序/json 的
java - 如何在 JAVA 中对 JSONArray 进行排序
ruby-on-rails - 为什么在 Ubuntu 中安装 JSON gem 时会出错?
c# - 分配给单个属性的多个 JsonProperty 名称
javascript - 来自json对象的Angular.js格式日期