elasticSearch学习(六)

时间:2022-07-23
本文章向大家介绍elasticSearch学习(六),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

高亮查询

ElasticSearch同时也支持高亮查询,他会将查询结果中的查询条件关键字进行自动的高亮显示。

GET /userlist/user/_search
{
  "query": {
    "match": {
      "name": "老崔"
    }
  },
  "highlight": {
    "pre_tags": "<p class ='key' style = 'color=red'>",
    "post_tags": "</p>",
    "fields": {
      "name": {}
    }
  }
}

SpringBoot集成ElasticSearch

此次SpringBoot集成ElasticSearch采用SpringBoot脚手架来进行学习。使用gradle来构建,顺便学习grade。

  1. ElasticSearch版本要与你安装的版本一致。
  2. 测试类的话,需要加上@SpringBootTest注解。

创建项目

方式一

方式二

创建一个新的maven项目,或者gradle项目。

引入jackson和lombok

plugins {
    id 'java'
    id 'org.springframework.boot' version '2.3.1.RELEASE'
    id 'io.spring.dependency-management' version '1.0.9.RELEASE'
}

group 'com.cxy'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-elasticsearch'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    //lombok
    implementation 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    //jackson
    // https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind
    compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.11.1'

    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
}