@Documnet 注解
@Document(indexName = "jcydb_t_cgj_gdzbxx", type = "t_cgj_gdzbxx", useServerConfiguration = true, createIndex = true)
我们来看Document 的注解
public @interface Document {
String indexName(); //索引库的名称,个人建议以项目的名称命名
String type() default ""; //类型,个人建议以实体的名称命名
short shards() default 5; //默认分区数
short replicas() default 1; //每个分区默认的备份数
String refreshInterval() default "1s"; //刷新间隔
String indexStoreType() default "fs"; //索引文件存储类型
}
@Field注解
/**
* "诉求类型 不分词
*/
@Excel(name = "诉求类型 ")
@Field(type = FieldType.Text, index = FieldIndex.not_analyzed)
private String sqlx;
/**
* "诉求内容 查询和存储ik 分词器分词
*/
@Excel(name = "诉求内容 ")
@Field(type = FieldType.Text, analyzer = "ik_max_word", searchAnalyzer = "ik_max_word")
private String sqlr;
/**
* "诉求来源
*/
@Excel(name = "诉求来源")
@Field(type = FieldType.Text, analyzer = "ik_max_word", searchAnalyzer = "ik_max_word")
private String sqly;
我们来看Field的注解
public @interface Field {
FieldType type() default FieldType.Auto; //自动检测属性的类型,可以根据实际情况自己设置
/*
* FieldIndex.not_analyzed:不会分词,只能根据原词索引Field;
* FieldIndex.analyzed:根据分词器分词,可以根据原词和分词后的词条索引Field;
* FieldIndex.no:该字段不会被索引,查不到;
*/
FieldIndex index() default FieldIndex.analyzed; //默认情况下分词,一般默认分词就好,除非这个字段你确定查询时不会用到
DateFormat format() default DateFormat.none; //时间类型的格式化
String pattern() default "";
boolean store() default false; //默认情况下不存储原文
String searchAnalyzer() default ""; //指定字段搜索时使用的分词器
String indexAnalyzer() default ""; //指定字段建立索引时指定的分词器
String[] ignoreFields() default {}; //如果某个字段需要被忽略
boolean includeInParent() default false;
}