远行的心 发表于 2018-11-1 12:04:16

Solr 如何处理日期类型

org.apache.solr.util.DateFormatUtil源码:  
文本格式日期处理相关
  

  
public static final TimeZone CANONICAL_TZ = UTC;
  
public static final Locale CANONICAL_LOCALE = Locale.ROOT;
  
public static final String NOW = "NOW";
  
...
  
static class ISO8601CanonicalDateFormat extends SimpleDateFormat {
  

  
    protected NumberFormat millisParser
  
      = NumberFormat.getIntegerInstance(CANONICAL_LOCALE);
  

  
    protected NumberFormat millisFormat = new DecimalFormat
  
      (".###", new DecimalFormatSymbols(CANONICAL_LOCALE));
  

  
    public ISO8601CanonicalDateFormat() {
  
      super("yyyy-MM-dd'T'HH:mm:ss", CANONICAL_LOCALE);
  
      this.setTimeZone(CANONICAL_TZ);
  
    }
  
    ....
  
}
  
...
  

  
org.apache.solr.common.util.JavaBinCodec源码:
  
二进制格式日期处理相关
  

  
if (val instanceof Date) {
  
    daos.writeByte(DATE);
  
    daos.writeLong(((Date) val).getTime());
  
    return true;
  
}


页: [1]
查看完整版本: Solr 如何处理日期类型