의미 론적 데이터 기술을 다루는 데있어 몇 가지 문제가 있습니다. GraphDB Triplestor를 로컬로 실행하여 RDF4J 및 Java를 사용하여 일부 SPARQL 쿼리를 예약하려고합니다. 아래의 코드에서 알 수 있듯이 10 개의 쿼리가 연속으로 실행됩니다. 그러나 단 5 (콘솔에서 숫자 0-4 참조) 시작됩니다. 문제는 내가 어떤 이유로 5 개의 열린 HTTP 연결로 제한된다는 것 같습니다. repConn.close() 호출은 아무 것도 변경하지 않는 것처럼 보입니다. 누구 아이디어?RDF4J 전용 스케줄링 트리플 스토어에 대한 쿼리
import org.eclipse.rdf4j.query.QueryLanguage;
import org.eclipse.rdf4j.query.TupleQuery;
import org.eclipse.rdf4j.query.TupleQueryResult;
import org.eclipse.rdf4j.repository.RepositoryConnection;
import org.eclipse.rdf4j.repository.http.HTTPRepository;
public class testmain {
public HTTPRepository rep;
public RepositoryConnection repConn;
public static void main(String[] args) {
testmain test = new testmain();
test.rep = new HTTPRepository("http://localhost:7200/repositories/test01");
//test.repConn = test.rep.getConnection();
for (int i = 0; i < 10; i++) {
test.repConn = test.rep.getConnection();
String queryString = "select ?archiveID where { ?video <http://www.some.ns/ontology##hasArchiveID> ?archiveID .}";
try {
TupleQuery tupleQuery = test.repConn.prepareTupleQuery(QueryLanguage.SPARQL, queryString);
TupleQueryResult queryResult = tupleQuery.evaluate();
} finally {
test.repConn.close();
}
System.out.println(i);
}
}
}
루프를 방해하는 예외가 발생합니까? 그렇다면 예외 (메시지, 스택 추적)를 질문에 추가하십시오. –
예외 없음. 크리스토프는 올바른 해결책을 제시합니다. 어쨌든 당신의 노력에 감사드립니다. –