
SolrQuery의 getHighlightQuery 메소드는 Solr의 하이라이트 기능을 구현하는 데 사용됩니다. 이 메소드는 하이라이트 쿼리를 반환하며, 하이라이트 쿼리는 검색 결과에서 특정 단어 또는 텍스트를 강조하는 데 사용됩니다.
Solr의 하이라이트 기능은 여러 종류가 있습니다. 가장 일반적인 종류는 다음과 같습니다.
- Fragments: 검색 결과에서 특정 단어 또는 텍스트를 강조합니다.
- Snippets: 검색 결과에서 특정 단어 또는 텍스트를 강조하고, 그 주변의 텍스트도 표시합니다.
- Fragments with Snippets: 검색 결과에서 특정 단어 또는 텍스트를 강조하고, 그 주변의 텍스트도 표시합니다.
Solr의 하이라이트 기능을 구현하려면, SolrQuery의 getHighlightQuery 메소드를 사용하여 하이라이트 쿼리를 생성하고, 그 쿼리를 사용하여 검색 결과를 가져옵니다.
설정 방법은 다음과 같습니다.
1. 하이라이트 쿼리를 생성하기 위해 SolrQuery의 getHighlightQuery 메소드를 사용합니다.
2. 하이라이트 쿼리를 사용하여 검색 결과를 가져옵니다.
3. 검색 결과에서 하이라이트된 텍스트를 추출합니다.
예를 들어, 다음과 같이 하이라이트 쿼리를 생성하고, 그 쿼리를 사용하여 검색 결과를 가져올 수 있습니다.
#hostingforum.kr
java
SolrQuery query = new SolrQuery();
query.setQuery("키워드");
query.setHighlight(true);
query.addHighlightField("필드명");
SolrServer server = new HttpSolrServer("http://localhost:8983/solr");
SolrQueryResponse response = server.query(query);
// 하이라이트된 텍스트를 추출합니다.
for (SolrDocument document : response.getResults()) {
String highlightedText = document.get("필드명");
System.out.println(highlightedText);
}
이러한 예제를 통해, SolrQuery의 getHighlightQuery 메소드를 사용하여 Solr의 하이라이트 기능을 구현할 수 있습니다.
2025-07-16 22:45