先说 Elasticsearch 版本,我的 Elasticsearch 版本是2.x,具体是2.0.2,所以参照的时候,请先核对版本,在版本相差大的情况下,先可以试试。
为什么要指定分词器,因为我们在搜索(Search)的时候,创建索引(Index)的时候,都有规则,如果我们这个规则不同,那么我们就可以指定了。
场景:
当我一个索引库是存储生鲜蔬菜的,那词库应该就是定制的生鲜蔬菜相关的。而另外一个是服装的,那么这2个索引库分词,搜索规则肯定大不相同。
然后一系列的入门教程:
好了废话不多说,下面开始走代码,本章节主要说Java API。
Java API 创建Mappingpublic class SearchIndexMapping implements BaseMapping{
public static XContentBuilder getMapping(){
XContentBuilder mapping = null;
try {
mapping = jsonBuilder()
.startObject()
//关闭TTL
.startObject("_ttl")
.field("enabled",false)
.endObject()
.startObject("properties")
.startObject("id").field("type","long").e