최근에 나는 solr 작업을 보았습니다. 내가 solr에서 색인을 생성하고 내 Java 응용 프로그램을 통해 쿼리하고 싶습니다. 내 응용 프로그램에서 solr.war를 사용하고 싶지 않습니다. solrj api 또는 lucene java api를 통해 어떻게 사용할 수 있습니까? 내 생각은 프로젝트 컨텍스트에서 이러한 인덱스를 추가하고 그것을 사용하는 것입니다. 몇 가지 예제/튜토리얼을 살펴 보았지만 이미 생성 된 인덱스로 작업하는 방법을 찾지 못했습니다. 제발 나에게 적절한 해결책을 말해 또는 솔루션을 지정 링크를 부탁드립니다.Java 응용 프로그램에서 lucene 색인 사용
0
A
답변
0
Lucene apis를 사용하여 색인을 작성/업데이트하고 검색 할 수 있습니다.
solr은 lucene을 기반으로하므로 기본 인덱스는 lucene 인덱스입니다.
Lucene은 클래스를 IndexWriter 및 IndexSearcher로 노출하므로 인덱스와 상호 작용할 수 있습니다. SOLR/루씬 인덱스를 통해 검색하는
예 -
Directory index = FSDirectory.open(new File("/path/to/index"));
IndexSearcher searcher = new IndexSearcher(index, true);
TopScoreDocCollector collector = TopScoreDocCollector.create(10, true);
searcher.search(q, collector);
ScoreDoc[] hits = collector.topDocs().scoreDocs;
이에 대한 예제를 찾을 수 있어야합니다.
0
예, Lucene에서 Solr로 만든 색인을 사용할 수 있습니다. Solr 자체가 Lucene을 사용하기 때문에 특별한 것이 없습니다. Lucene의 모든 문서는 변경되지 않고 그대로 적용됩니다.
또는 Solr을 서버로 사용하고 싶지 않은 경우 Java 응용 프로그램에서 embedded을 사용할 수 있습니다.
+0
감사합니다. 나는 lucene java api를 사용했다. –
0
내가 이런 식으로 만든 ..
String realPath = request.getRealPath("/");
StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT);
Directory index = FSDirectory.open(new File(realPath+"/index"));
IndexSearcher indexSearcher = new IndexSearcher(index, true);
TopScoreDocCollector collector = TopScoreDocCollector.create(2000, true);
QueryParser query = new QueryParser(Version.LUCENE_CURRENT, "name", analyzer);
Query q = null;
try {
q = query.parse("*:*");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
indexSearcher.search(q, collector);
ScoreDoc[] scoreDoc = collector.topDocs().scoreDocs;
관련 문제
- 1. lucene 색인 업데이트 전략
- 2. Lucene 색인 서비스
- 3. 웹 응용 프로그램에서 두 개의 다른 스레드에서 Lucene 색인 업데이트
- 4. Java 응용 프로그램에서 데이터베이스 사용
- 5. Java 응용 프로그램에서 JSR82 사용
- 6. Java 응용 프로그램에서 AutoIt 사용
- 7. C# Lucene 모든 색인 얻기
- 8. 두 응용 프로그램 서버간에 Lucene 색인 동기화
- 9. CLucene vs java lucene 사용
- 10. Lucene 색인 오류 해결
- 11. Apache Lucene 색인 작성자
- 12. Lucene 색인 tier?
- 13. Lucene 색인 일괄 커밋
- 14. Lucene 색인 최적화
- 15. 젠드 Lucene 색인 병합
- 16. Lucene 색인 전략 업데이트
- 17. lucene 색인 업데이트
- 18. lucene 색인 객체가 메모리에 있습니다.
- 19. Lucene 색인 생성 및 검색
- 20. Zend의 색인 생성 문서 업데이트 Lucene 색인
- 21. Search Lucene - 사용 사례
- 22. 애니메이션이있는 Java 응용 프로그램에서 다중 타이머 사용
- 23. Java 응용 프로그램에서 중국어 문자 사용
- 24. Android 응용 프로그램에서 JAVA RMI 사용
- 25. Java 응용 프로그램에서 자체 메모리 사용 모니터링
- 26. 상업용 Java 응용 프로그램에서 LGPL 라이브러리 사용
- 27. Lucene 색인 | 아포스트로피가있는 단어의 문제점!
- 28. Lucene 색인 : 특정 용어 제외
- 29. 색인 작성시 Lucene 용어 추가하기
- 30. Lucene 인덱싱 - 웹 서비스 사용
Mr. Jayendra 선생님, 정말 도움이되었습니다. –
쿼리 결과를 JSON 형식으로 직접 가져 오는 방법이 있는지 알려주십시오. 우리가 & wt = json으로 얻을 때. –
아니요 .. 이것은 자바 객체만을 다룰 것입니다. – Jayendra