All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.es.plus.annotation.EsIndex Maven / Gradle / Ivy

package com.es.plus.annotation;

import com.es.plus.constant.DefaultClass;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
 * @Author: hzh
 * @Date: 2023/3/21 17:50
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface EsIndex {

    /**
     * 索引名
     */
    String index() default "";

    /**
     * 类型 高版本已默认_doc。旧版本需要手动设置
     */
    String type() default "_doc";
    
    /**
     * 类型 高版本已默认_doc。旧版本需要手动设置
     */
    String[] sortField() default {};
    /**
     * 类型 高版本已默认_doc。旧版本需要手动设置
     */
    String[] sortOrder() default {};
    /**
     * 分片
     */
    int shard() default 5;

    /**
     * 副本
     */
    int replices() default 1;

    /**
     * 初始窗口值 可更改 默认走全局
     */
    int initMaxResultWindow() default 0;

    /**
     * 初始刷新值 可更改
     */
    String initRefreshInterval() default "1s";

    /**
     * 选择设置分词器
     */
    String[] analyzer() default {};

    /**
     * 选择设置默认分词器
     */
    String defaultAnalyzer() default "";

    /**
     * 别名
     */
    String alias() default "";

    /**
     * 是否试着重建索引
     */
    boolean tryReindex() default false;
    
    /**
     * 自动创建和更新映射 不会重建索引
     */
    boolean updateMapping() default true;

    /**
     *  客户端实例
     */
    String clientInstance() default "master";

    /**
     * 启动时创建索引和改变映射
     */
    boolean startInit() default true;
    
    Class childClass() default DefaultClass.class;

    Class parentClass() default DefaultClass.class;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy