我需要公开一个公共(public)API,并且我需要将密码查询的结果转换为json。我已经开始这个过程,但是我在序列化 scala.collection.convert.Wrappers$SeqWrapper 类型的对象时遇到问题,该对象在 cypher 中使用collect() 时返回。
这是密码查询:
MATCH (orders:Orders {id:'locationrestaurant'}), (order:Order), (orders)-[:hasOrder]-(order),(order)-[:orderedProduct]->(product),(client)-[:ordered]->(order) return (order),(client), collect(product) as products;
我该如何处理这种类型的对象?我可以将其转换到列表中吗?另外,是否有任何库可以将 ExecutionResult 转换为 json?
如果您需要更多详细信息,请询问。这是我的代码
public QueryResult runCypher(String query, Map<String,Object> params)
{
QueryResult result = new QueryResult();
Transaction tx = service.beginTx();
ExecutionResult execResult = null;
boolean success = true;
System.out.println(query);
try
{
if(params!=null) execResult = engine.execute(query, params);
else execResult = engine.execute(query);
result.result = getReturnedObjectsToJson(execResult);
}
catch(Exception e)
{
System.out.println(e.getMessage()+" exception message");
result.result = e.getMessage();
success = false;
}
finally
{
if(success) tx.success();
else tx.failure();
}
tx.close();
result.success = success;
return result;
}
基本上,getReturnedObjectsToJson 完成了这项工作。
最佳答案
我该如何处理这种类型的对象?
data.get("labels") java.util.Collection实例
我可以将其转换到列表中吗?
是的
另外,是否有任何库可以将 ExecutionResult 转换为 json?
ExecutionResult是可迭代的,我认为你可以使用任何流行的java json框架,例如gson或jackson
关于java - 将 ExecutionResult 对象转换为 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22618102/