elasticSearch学习(六)

elasticSearch学习(六)

高亮查询

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

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

image-20200715170827489

SpringBoot集成ElasticSearch

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

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

创建项目

方式一

image-20200716135005558

image-20200716135139461

方式二

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

image-20200716135354952

引入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'
    }
}