Class LuceneUtils

java.lang.Object
com.easydesk.lucene.util.LuceneUtils

public final class LuceneUtils extends Object
Lucene 관련 utility
  • Method Details

    • highLighter

      public static String highLighter(String value, String queryString, int totalLength)
      value 안의 queryString 단어를 <span class="highlight"> 로 감싼다. queryString 이 주어지지 않으면 abbreviate 만 실시한다.
      Parameters:
      value - 원문
      queryString - 공백으로 구분된 검색어
      totalLength - output length if 0 than no abbreviate
      Returns:
      highlight 된 문자열
    • dateToString

      public static String dateToString(Date date)
      Lucene Date String format 으로 변경 Resolution 은 Resolution.MILLISECOND 이다
      Parameters:
      date - date
      Returns:
      Lucene Date String
    • dateToString

      public static String dateToString(Date date, org.apache.lucene.document.DateTools.Resolution resolution)
      주어진 Resolution 으로 Lucene Date String format 으로 변경한다.
      Parameters:
      date - date
      resolution - resolution
      Returns:
      Lucene Date String
    • stringToDate

      public static Date stringToDate(String date) throws ParseException
      Lucene Date String format 을 Date 로 변경 입력 String 이 null 이면 현재 시간을
      Parameters:
      date - String yyyyMMddHHmmssSSS
      Returns:
      Date
      Throws:
      ParseException - format 오류
    • moduleFilter

      public static org.apache.lucene.search.Query moduleFilter(BitSet moduleFilter)
      IndexConstants.MODULE_ID filter query 를 만든다. (LongField 로 index 되어 있어야 한다.)
      Parameters:
      moduleFilter - 허용된 module id
      Returns:
      filter query, 허용된 module 이 없으면 아무것도 찾지 않는 query
    • unescape

      public static String unescape(String s)
      + - && || ! ( ) { } [ ] ^ " ~ * ? : \ 앞의 \ 를 제거한다.
      Parameters:
      s - escape 된 문자열
      Returns:
      unescape 된 문자열
      See Also:
      • QueryParserBase.escape(String)