Jest 操作 elastic search

先看实体类:

package com.elasticexample.demo.pojo;

import io.searchbox.annotations.JestId;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * @Author lyr
 * @create 2020/2/15 22:43
 */
@Data
@Accessors(chain = true)

public class Article {

    /**
     * 注意 : 如果不手动指定 Jestid, elasticsearch 会把其放入 _source里面,而不是看成一个id,而且会有一个随机的字符串作为 _id
     * 如果 指定了 Jestid, 那么这个就是 _id 字段
     */
    @JestId
    private Integer id;
    private String title;
    private String content;
    private String author;

}

把 数据存入 ES中:

@Test
    public void beanIndexCreate()
    {
        Article article = new Article()
                .setId(1)
                .setAuthor("lyr")
                .setTitle("古诗")
                .setContent("休息时间");
        Index index = new Index.Builder(article)
                .index("datasource01")
                .type("tbl_article01")
                .build();

        try {
            //保存为文档
            jestClient.execute(index);
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

这里有个注意点:如果没有 @Jestid, 我就要在 创建 Index对象的 时候手动指定 jestid
这样:

Index index = new Index.Builder(article)
                .index("datasource01")
                .type("tbl_article01")
                .id("1")
                .build();

这个是没有注解时创建的:
在这里插入图片描述
下面是有 @JestId时创建的
在这里插入图片描述

指定 jestId ,才可以通过 url去访问对应id 的资源

在这里插入图片描述
搜索的例子就不写了

用 SearchBuilder 构建搜索条件,传入对应的json查询表达式
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值