问题描述
我正在尝试在 intellij 中创建一个 Kafka 消费者,但是当我尝试创建 JsonParser
时,它抛出了一个错误:
JsonParser 是抽象的;无法实例化 0
private static JsonParser jsonParser = new JsonParser();
private static String extractIdFromTweet(String tweetJson){
return jsonParser.parse(tweetJson)
.getAsJsonObject()
.get("id_str")
.getAsString();
}
我试过了:
- gson Maven 依赖
- org.json.simple.JSONObject
- org.json.JSONObject
但错误仍然存在。
解决方法
您需要使用工厂方法创建 JsonParser:
以下示例演示如何从包含空 JSON 数组的字符串创建解析器:
JsonParser parser = Json.createParser(new StringReader("[]"));
JsonParserFactory 类还包含创建 JsonParser 实例的方法。创建时首选 JsonParserFactory 多个解析器实例。示例用法如下所示 例子:
JsonParserFactory factory = Json.createParserFactory();
JsonParser parser1 = factory.createParser(...);