<InputParameters>
<Textbox>
<Text>ABCD</Text>
<Text>EFGH</Text>
<Text>HIJK</Text>
</Textbox>
</InputParameters>
假设我必须将此xml文件数据添加到arangodb中。一个人怎么能这样做?
答案 0 :(得分:2)
有两种正确的解决方案。 一种是将整个XML放入文档的属性中。这对于在xml的有效负载上进行AQL查询而言可能不合适。
另一种可能的方法是使用jsonml将xml转换为结构化的json文档,并将它们存储为using their java library。我不知道它在复杂的XML上如何扩展,如SOAP。
然后,您可以创建AQL查询以处理该集合,并FILTER
创建源XML的属性。
答案 1 :(得分:2)
从版本2.7.1开始,aragodb-java-driver支持编写(createDocumentRaw(...))和读取(getDocumentRaw(...)) 原始字符串。
示例:
arangoDriver.createDocumentRaw("testCollection", "{\"test\":123}",
true, false);
使用JsonML,您可以将XML字符串转换为JSON字符串并将其存储到ArangoDB中:
// writing
String xml = "<recipe name=\"bread\" prep_time=\"5 mins\"</recipe> ";
JSONObject jsonObject = JSONML.toJSONObject(string);
DocumentEntity<String> entity = arangoDriver.createDocumentRaw(
"testCollection", jsonObject.toString(), true, false);
String documentHandle = entity.getDocumentHandle();
// reading
String json = arangoDriver.getDocumentRaw(documentHandle, null, null);
JSONObject jsonObject2 = new JSONObject(str);
String xml2 = JSONML.toString(jsonObject2));
您可以在arangodb-java-driver git repository中找到更多示例。