使用 Graphson 转换 GraphResultSet JSON
Convert GraphResultSet JSON using Graphson
我正在尝试将 GraphResultSet 对象转换为类似于 datastax studio returns 的 JSON 格式。我正在尝试使用 Graphson。是否有任何示例代码将结果对象转换为 JSON?
我尝试了 tikerpop 蓝图中的以下内容,但它不起作用
List<GraphNode> gf=((GraphResultSet) resultSet).all();
Vertex v = (Vertex) gf.get(0).asVertex();
JSONObject json = null;
try {
json = GraphSONUtility.jsonFromElement((Element) v,getElementPropertyKeys((Element) v, false), GraphSONMode.COMPACT);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我从 dse 得到一个 GraphResultSet 对象,它有顶点和边。我想以 JSON 格式输出。
您不能在 com.datastax.driver.dse.graph.DefaultVertex
和 com.tinkerpop.blueprints.Element
之间直接转换。
DSE Java 驱动程序中有 GraphSONUtils class (src) 应该能够处理这些转换。但是因为它在 "internal" 包中,所以我希望随时可能发生变化。
目前没有直接的方法将 DSE 驱动程序图形对象转换为 JSON。但是,如果使用 DSE driver 1.5.0 如果您正在寻找简单的 JSON 响应,则可以将驱动程序配置为使用 GraphSON1。然后简单地输出 GraphNode
:
的字符串表示
DseCluster dseCluster = DseCluster.builder().addContactPoint("127.0.0.1")
.withGraphOptions(
new GraphOptions()
.setGraphName("demo")
// GraphSON version is set here:
.setGraphSubProtocol(GraphProtocol.GRAPHSON_1_0)
)
.build();
DseSession dseSession = dseCluster.connect();
// create query
GraphStatement graphStatement = [.....];
GraphResultSet resultSet = dseSession.executeGraph(graphStatement);
for (GraphNode gn : resultSet) {
String json = gn.toString();
}
我正在尝试将 GraphResultSet 对象转换为类似于 datastax studio returns 的 JSON 格式。我正在尝试使用 Graphson。是否有任何示例代码将结果对象转换为 JSON?
我尝试了 tikerpop 蓝图中的以下内容,但它不起作用
List<GraphNode> gf=((GraphResultSet) resultSet).all();
Vertex v = (Vertex) gf.get(0).asVertex();
JSONObject json = null;
try {
json = GraphSONUtility.jsonFromElement((Element) v,getElementPropertyKeys((Element) v, false), GraphSONMode.COMPACT);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我从 dse 得到一个 GraphResultSet 对象,它有顶点和边。我想以 JSON 格式输出。
您不能在 com.datastax.driver.dse.graph.DefaultVertex
和 com.tinkerpop.blueprints.Element
之间直接转换。
DSE Java 驱动程序中有 GraphSONUtils class (src) 应该能够处理这些转换。但是因为它在 "internal" 包中,所以我希望随时可能发生变化。
目前没有直接的方法将 DSE 驱动程序图形对象转换为 JSON。但是,如果使用 DSE driver 1.5.0 如果您正在寻找简单的 JSON 响应,则可以将驱动程序配置为使用 GraphSON1。然后简单地输出 GraphNode
:
DseCluster dseCluster = DseCluster.builder().addContactPoint("127.0.0.1")
.withGraphOptions(
new GraphOptions()
.setGraphName("demo")
// GraphSON version is set here:
.setGraphSubProtocol(GraphProtocol.GRAPHSON_1_0)
)
.build();
DseSession dseSession = dseCluster.connect();
// create query
GraphStatement graphStatement = [.....];
GraphResultSet resultSet = dseSession.executeGraph(graphStatement);
for (GraphNode gn : resultSet) {
String json = gn.toString();
}