【发布时间】:2014-08-09 12:40:23
【问题描述】:
我有以下情况:
Class B有一个方法可以接收带有查询的字符串,然后执行它 并返回Resultset。Class A创建一个 SPARQL 查询并调用Class B中的方法。
问题是,当Class A 取回Resultset 对象时,它是空的!当然是因为查询在Class B 中关闭(参见jena.query.ResultSet and jena.query.QuerySolution: empty iterator after SPARQL request)。
我的问题是,这怎么能完全模块化?我想要一个Class B,它只执行 SPARQL 查询,而不必知道结果结构或任何东西。我希望Class B 处理查询创建和查询关闭,因为Class A 这样做是没有意义的。
Class B:
try {
Query query = QueryFactory.create(myQuery);
qe = QueryExecutionFactory.create(query, ontology);
ResultSet results = qe.execSelect();
return results;
} catch (...){
...
} finally {
...
qe.close();
}
【问题讨论】:
标签: java database resultset jena