我正在尝试输出到Jackson JSON中的JSON对象。但是,我无法使用以下代码获取JSON对象。
public class MyClass {
private ObjectNode jsonObj;
public ObjectNode getJson() {
ObjectMapper mapper = new ObjectMapper();
// some code to generate the Object user...
mapper.writeValue(new File("result.json"), user);
jsonObj = mapper.createObjectNode();
return jsonObj;
}
}
程序运行后,该文件result.json
包含正确的JSON数据。但是,jsonObj
为空(jsonObj={}
)。我查找了ObjectMapper的Javadoc,但找不到一种简便的方法来写入ObjectNode
(杰克逊中的JSON对象)。没有ObjectMapper
像下面这样的方法:
public void writeValue(ObjectNode json, Object value)
如何ObjectNode
直接写信给ObjectMapper
?
您需要改用ObjectMapper#valueToTree()。
这将构造等效的JSON树表示形式。功能与将值序列化为JSON并将JSON解析为树一样,但是效率更高。
如果不需要,则不需要将User
对象写出到JSON文件中。
public class MyClass {
private ObjectNode jsonObj;
public ObjectNode getJson() {
ObjectMapper mapper = new ObjectMapper();
// some code to generate the Object user...
JsonNode jsonNode = mapper.valueToTree(user);
if (jsonNode.isObject()) {
jsonObj = (ObjectNode) jsonNode;
return jsonObj;
}
return null;
}
}
基本上,我不希望在生成的JSON文件中出现任何空的JSON数组或对象。我已经使用以下方法相应地配置了ObjectMapper: 这适用于数组、集合和字符串。但是,如果我有一个空对象(=所有属性都为null或empty),它仍然会显示在生成的JSON中,如下所示:
问题内容: 如何直接写入linux framebuffer? 问题答案: 看看FBIOPUT_VSCREENINFO,ioctl和mmap (我有代码,但没有此电脑,对不起) 编辑:这应该让您开始
我们的客户机将在servlet上使用json对象发送请求,基于这些数据我想更新我们的数据库。 org.codehaus.jackson.jsonParseException:意外字符(“O”(代码111)):在org.codehaus.jackson.jsonParser._constructor(jsonParserminimalbase._reportExpectedChar(jsonPars
问题内容: 我的项目中有一些模型类,例如,等等,它们具有多个字段及其setter-getter方法,我需要 通过套接字 与客户端和服务器之间 来回交换这些类的对象作为JSONObject 。 有什么方法可以直接从模型类的对象创建,以使对象的字段成为键,而该模型类对象的值成为此JSONObject的值。 例: 我创建JSON对象为: 这让我有点像: 请注意,在我的某些模型类中,某些属性本身 是其他模
问题内容: 我正在使用ObjectMapper(https://github.com/Hearst- DD/ObjectMapper )将JSON映射到Swift对象。 说我有这个JSON结构: 我有以下Swift对象: 如何使用JSON对象中的键区分映射和映射?非常感谢! 问题答案: 细节 Xcode 10.2.1(10E1001),Swift 5 json档案 ObjectMapper示例 检
我试图从json文件中获取一个对象数组,但遇到了一个问题。 我应该使用什么路径来获取项目中的所有项目(item0、item1、item2…)? 你能给我一个怎么做的建议吗。 Json 示例 从items对象中过滤item的最佳方法,但我不知道如何使用json路径。