商城项目(2.0版本) day10

一、搜索模块的分析

1.1 项目的步骤

1 数据结构的准备
2 项目的初始化
3 es客户端的整合
4 谷粒搜索代码的开发
A 搜索功能
B 面包屑功能

1.2数据结构

1 商品名称(展示/查询)
2 商品价格(展示/查询)
3 商品图片(展示)
4 平台属性和属性值的列表(查询)
5 商品描述(展示/查询)
6 热度值(查询)
7 三级分类id(查询)
8 商品id
9 主键

1.3 参数结构

关键字(商品名称(展示/查询) 5 商品描述(展示/查询) 2 商品价格(展示/查询))
平台属性和属性值的列表(查询)
三级分类id(查询)

二、搜索模块的代码

2.1 通过es的mapping定义商品的数据结构

Es的mapping定义是基于整个库的
Mysql数据结构字段定义是基于整合表

Es的默认数据类型

在这里插入图片描述

PUT gmall0105
{
    
    
 "mappings": {
    
    
   "PmsSkuInfo":{
    
    
     "properties": {
    
    
       "id":{
    
    
        "type": "keyword",
        "index": true
      },
      "skuName":{
    
    
        "type": "text",
        "analyzer": "ik_max_word"
      },
      "skuDesc":{
    
    
        "type": "text"
        , "analyzer": "ik_smart"
      },
      "catalog3Id":{
    
    
        "type": "keyword"
      },
      "price":{
    
    
        "type": "double"
      },
      "skuDefaultImg":{
    
    
        "type": "keyword",
        "index": false
      },
      "hotScore":{
    
    
        "type": "double"
      },
      "productId":{
    
    
        "type": "keyword"
      },
      "skuAttrValueList":{
    
    
        "properties": {
    
    
          "attrId":{
    
    
            "type":"keyword"
          },
          "valueId":{
    
    
            "type":"keyword"
          }
        }
      }
     } 
   }
 } 
}

2.2 Jest 的客户端

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.3 如何定义复杂查询

查询一下条件的手机:
1 查询所有名字中带华为
2 查询所有4寸以下,16G内存

Query{
Bool:{// 先过滤,后查询
Filter:{term,term}
must:{match}
}
}

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

查询dsl的封装工具类
在这里插入图片描述

2.4 高亮显示

1 controller参数传递
增加一个PmsSearchParam参数类
2 service的业务逻辑编写
之前在测试是已完成
3排序和高亮
排序

GET movie_index/movie/_search
{
    
    
  "query":{
    
    
    "match": {
    
    "name":"red sea"}
  }
  , "sort": [
    {
    
    
      "doubanScore": {
    
    
        "order": "desc"
      }
    }
  ]
}

// sort
searchSourceBuilder.sort(“id”,SortOrder.DESC);

高亮
“highlight” : {
“fields” : {
“skuName” : { }
}
}
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42082278/article/details/113923103
今日推荐