黑马学ElasticSearch(八)

目录:

(1)黑马旅游案例-搜素-分页

(2)黑马旅游案例-条件过滤

(3)黑马旅游案例-我附近的酒店

(4)黑马旅游案例-广告置顶


(1)黑马旅游案例-搜素-分页

黑马学ElasticSearch(八)_第1张图片

黑马学ElasticSearch(八)_第2张图片

 导入项目:

黑马学ElasticSearch(八)_第3张图片

黑马学ElasticSearch(八)_第4张图片 

运行启动类:进行访问:

黑马学ElasticSearch(八)_第5张图片

点击搜索:此时还没有写功能:

黑马学ElasticSearch(八)_第6张图片 前端传递参数:搜索框没有写,key是空的  sortBy排序时默认的黑马学ElasticSearch(八)_第7张图片

 

 

 黑马学ElasticSearch(八)_第8张图片

定义实体类:

黑马学ElasticSearch(八)_第9张图片 

黑马学ElasticSearch(八)_第10张图片 

黑马学ElasticSearch(八)_第11张图片 

 定义PageResult类:返回结果对象类黑马学ElasticSearch(八)_第12张图片

 

 定义Controller:

黑马学ElasticSearch(八)_第13张图片

 controller中方法的参数Request Params,前端提交的是json,方法参数需要加注解@RequestBody       

 黑马学ElasticSearch(八)_第14张图片

IHotelService接口:写这个方法

黑马学ElasticSearch(八)_第15张图片 原来写的测试类:中client是创建出来的:

黑马学ElasticSearch(八)_第16张图片

现在我们可以通过spring注入到容器中:可以在启动类中创建Bean:

黑马学ElasticSearch(八)_第17张图片

 

 实现类IHotelServiceImpl:注入这个client对象

实现方法: 

黑马学ElasticSearch(八)_第18张图片

 解析方法:

黑马学ElasticSearch(八)_第19张图片

 重新启动测试:黑马学ElasticSearch(八)_第20张图片

现在搜索一个如家:黑马学ElasticSearch(八)_第21张图片 结果都是以如家的结果进行返回

黑马学ElasticSearch(八)_第22张图片 

查看传递的参数是如家

黑马学ElasticSearch(八)_第23张图片 黑马学ElasticSearch(八)_第24张图片

 黑马学ElasticSearch(八)_第25张图片

还可以点击分页:

黑马学ElasticSearch(八)_第26张图片黑马学ElasticSearch(八)_第27张图片 

 (2)黑马旅游案例-条件过滤

页面是有过滤项的,用户点击这些可以做过滤 

黑马学ElasticSearch(八)_第28张图片

 用户点击什么,前端就会传递什么参数:黑马学ElasticSearch(八)_第29张图片

 

 黑马学ElasticSearch(八)_第30张图片

黑马学ElasticSearch(八)_第31张图片 

黑马学ElasticSearch(八)_第32张图片 

ctiy、brand、startName是精确查询用trem、price用范围查询range

trem+range+match全文检索,有多个查询,就可以使用BooleanQuery

修改实现类中的search方法:

黑马学ElasticSearch(八)_第33张图片

黑马学ElasticSearch(八)_第34张图片 

 上面的查询条件可以坐下封装:

使用快捷键Ctrl+Alt+M进行封装方法:

黑马学ElasticSearch(八)_第35张图片

 

 封装的过滤方法:

  解析方法:

黑马学ElasticSearch(八)_第36张图片

 

 点击杭州:下面搜索的全部是杭州的

 

 

在做一个价格过滤:

黑马学ElasticSearch(八)_第37张图片

过滤品牌速8:

黑马学ElasticSearch(八)_第38张图片 

 (3)黑马旅游案例-我附近的酒店

黑马学ElasticSearch(八)_第39张图片

黑马学ElasticSearch(八)_第40张图片 黑马学ElasticSearch(八)_第41张图片

 

在前端点击定位按钮:

黑马学ElasticSearch(八)_第42张图片 

成功定位:

黑马学ElasticSearch(八)_第43张图片 

发送一个请求:携带一个参数location

黑马学ElasticSearch(八)_第44张图片 

添加字段:黑马学ElasticSearch(八)_第45张图片

修改实现类sercher方法:添加排序的代码

黑马学ElasticSearch(八)_第46张图片黑马学ElasticSearch(八)_第47张图片 

  封装的方法:

 

 

  修改解析方法:

黑马学ElasticSearch(八)_第48张图片

修改解析方法,添加距离值-获取排序值

黑马学ElasticSearch(八)_第49张图片黑马学ElasticSearch(八)_第50张图片

 

放回页面的对象添加距离属性:distance

黑马学ElasticSearch(八)_第51张图片

 

 点击定位:就获取到了数据

黑马学ElasticSearch(八)_第52张图片

 显示了距离黑马学ElasticSearch(八)_第53张图片

 

(4)黑马旅游案例-广告置顶

黑马学ElasticSearch(八)_第54张图片

黑马学ElasticSearch(八)_第55张图片 

 

加字段:

黑马学ElasticSearch(八)_第56张图片 

修改索引库的文档:

黑马学ElasticSearch(八)_第57张图片 

修改的是条件封装的部分 

黑马学ElasticSearch(八)_第58张图片黑马学ElasticSearch(八)_第59张图片

 

 修改过滤条件方法:添加算分的代码黑马学ElasticSearch(八)_第60张图片

黑马学ElasticSearch(八)_第61张图片

黑马学ElasticSearch(八)_第62张图片

 

出现了条件靠前的:广告置顶黑马学ElasticSearch(八)_第63张图片

 

 黑马学ElasticSearch(八)_第64张图片

 

黑马学ElasticSearch(八)_第65张图片

黑马学ElasticSearch(八)_第66张图片 

 

你可能感兴趣的:(json)