Aid中的ArangoDB Java驱动程序Forwardslash被转义

时间:2017-02-27 16:11:08

标签: java arangodb

通过Java驱动程序使用AQL查询查询ArangoDB时,_id属性中的正斜杠将被转义。

结果是:

{"_id":"sed\/CLI_ELE_ALL_400_01.324fd0e4-cf8a-4e39-9889-d1c50ab3594c","_key":"...

但我想这样:

{"_id":"sed/CLI_ELE_ALL_400_01.324fd0e4-cf8a-4e39-9889-d1c50ab3594c","_key":"...

代码段:

  String query = "for node in nodes return node"

  try {

        ArangoCursor<String> cursor = driver.query(query, null, null, String.class);

        if (cursor.hasNext()) {
            data = cursor.next();
            System.out.println(data));
        }

    } catch (ArangoDBException ex) {}

    return data;

有没有办法绕过这个而不需要正则表达式替换一切?

1 个答案:

答案 0 :(得分:0)

将query()调用中的参数type设置为String,这会导致java驱动程序将结果解析为Json格式。在Json中,/和其他字符被转义是正确的。每个Json解析器都应该能够处理它。

java-driver已经支持将结果解析为POJO,Map<String, Object>或实用程序类BaseDocument,而无需绕过Json。您可以找到此here的一些示例。