ElasticSearch--Springboot整合ElasticSearch

【笔记于学习尚硅谷课程所作】

5、Springboot整合ElasticSearch

1.快速创建SpringBoot项目

2.导入依赖

<dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>7.4.2</version>
</dependency>

<!--加入7.4.2的版本控制-->
<properties>
        <java.version>1.8</java.version>
        <elasticsearch.version>7.4.2</elasticsearch.version>
    </properties>

3.创建配置文件GulimallElasticSearchConfig.java

//给容器中注入一个RestHighLevelClient
@Configuration
public class GulimallElasticSearchConfig {

        //通用配置项
    public  static  final RequestOptions COMMON_OPTIONS;

    static {
        RequestOptions.Builder builder =RequestOptions.DEFAULT.toBuilder();



        COMMON_OPTIONS = builder.build();
    }
    
    @Bean
    public RestHighLevelClient esRestClient() {
        RestHighLevelClient client = new RestHighLevelClient(
                RestClient.builder(
                        new HttpHost("192.168.196.128", 9200, "http")));

        return client;
    }
}

4.测试,在测试test中测试

@SpringBootTest
class GulimallSearchApplicationTests {

    @Autowired
    private RestHighLevelClient client;

    @Test
    void test(){
        System.out.println(client);
    }

    /**
     * 测试存储数据
     */
    @SneakyThrows
    @Test
    void test1 (){
        IndexRequest indexRequest = new IndexRequest("users");
        indexRequest.id("1");
        User user = new User();
        user.setName("li");
        user.setAge(18);
        String json = JSON.toJSONString(user);
        indexRequest.source(json, XContentType.JSON);

        IndexResponse index = client.index(indexRequest, GulimallElasticSearchConfig.COMMON_OPTIONS);

        System.out.println(index);
    }

    @Data
    class User{
        private  String name;
        private  Integer age;
    }
}

猜你喜欢

转载自blog.csdn.net/qq_41596568/article/details/106413969