1
여기 Mark Logic 데이터베이스에 연결하고 문자열 Keyword를 사용하여 문서를 검색하는 Java 프로그램을 만듭니다. 아래는 생성 된 프로그램입니다.Marklogic에서 Java API를 사용한 검색 생성
import com.marklogic.client.DatabaseClient;
import com.marklogic.client.DatabaseClientFactory;
import com.marklogic.client.DatabaseClientFactory.Authentication;
import com.marklogic.client.document.BinaryDocumentManager;
import com.marklogic.client.document.JSONDocumentManager;
import com.marklogic.client.document.TextDocumentManager;
import com.marklogic.client.document.XMLDocumentManager;
import com.marklogic.client.io.Format;
import com.marklogic.client.io.StringHandle;
import com.marklogic.client.query.QueryManager;
import com.marklogic.client.query.StringQueryDefinition;
public class dcb_conn {
public static void main(String args[]){
DatabaseClient client = DatabaseClientFactory.newClient("localhost", 8004, "venkatesh", "F1mas", Authentication.DIGEST);
BinaryDocumentManager binDocMgr = client.newBinaryDocumentManager();
XMLDocumentManager XMLdocMgr = client.newXMLDocumentManager();
JSONDocumentManager JSONDocMgr = client.newJSONDocumentManager();
TextDocumentManager TextDocMgr = client.newTextDocumentManager();
QueryManager queryMgr = client.newQueryManager();
StringQueryDefinition query = queryMgr.newStringDefinition();
StringHandle resultsHandle = new StringHandle().withFormat(Format.XML);
query.setCriteria("Venkatesh");
queryMgr.search(query, resultsHandle);
}
}
나는 (ABC.xml과 같은) 문서 결과를 얻지 못하고 대신 아래에 언급 한 결과를 얻고 있습니다. 제가 여기서 누락 된 것을 조언 해 주시겠습니까?
10:24:36.139 [main] DEBUG c.m.client.DatabaseClientFactory - Creating new database client for server at localhost:8004
10:24:36.155 [main] DEBUG c.m.client.impl.JerseyServices - Connecting to localhost at 8004 as venkatesh
10:24:36.319 [main] DEBUG c.m.client.impl.JerseyServices - Searching for Venkatesh
은 또한 검색은 대문자를 가지고 있습니다으로 -remove입니다 즉, 기본적으로 대소 문자를 구분하여 실행합니다 ([cts : word-query 사용법 참고] (http://docs.marklogic.com/cts:word-query)를 참조하십시오. 대소 문자가 일치하는 텍스트가 있는지 확인하십시오 소문자 쿼리를 사용하십시오 –
David 님 감사합니다. 아래에 언급 된대로 프로그램을 수정했으며 결과를 지금 표시하고 있습니다 .. DatabaseClient client = DatabaseClientFactory.newClient ("localhost", 8004, "admin", "admin" , Authentication.DIGEST); \t \t QueryManager queryMgr = client.newQueryManager(); \t \t StringQueryDefinition query = queryMgr.newStringDefinition(); \t \t SearchHandle resultsHandle = new SearchHandle(); \t \t query.setCriteria ("Venkatesh"); \t \t // 검색을 실행하십시오. \t \t \t queryMgr.search (query, resultsHandle); \t \t // 결과 서식 지정 \t \t \t TutorialUtil.displayResultURIs (resultsHandle); \t \t \t client.release(); \t} } – V3nky
또한 Java API를 사용하여 GUI를 작성하는 경우 문서 이름을 사용하여 문서를 검색하는 방법에 대한 질문이 있습니다. 제발 조언. – V3nky