A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 第三十六把刀 初级黑马   /  2019-8-14 14:54  /  827 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(1)后端使用匹配查询和布尔查询
(2)前端使用thymeleaf模板渲染
(3)前端向后端传递map(因为提交的不仅仅是关键字,还有品牌、规格、分类等信息)
(4)后端向前端返回map(因为返回的不仅仅是列表,还有商品分类、品牌和规格列表等数据)
1.3 代码实现1.3.1 集成elasticsearch高级客户端
(1)qingcheng_service_goods工程pom.xml新增依赖(2)qingcheng_service_goods工程新增工厂类(3)qingcheng_service_goods工程applicationContext-service.xml新增配1.3.2 关键字搜索逻辑
(1)qingcheng_interface工程新增接口  SkuSearchService  服务接口新增方法定义(2)qingcheng_service_goods工程新增服务实现类SkuSearchServiceImpl  实现此方法,实现关键字查询<ul class="yui3-g">        <li class="yui3-u-1-5" th:each="sku:${result.rows}">                <div class="list-wrap">                        <div class="p-img">                                <a href="item.html" target="_blank"><img th:src="${sku.image}" /></a>                        </div>                        <div class="price">                                <strong>                                        <em>¥</em>                                        <i th:text="${#numbers.formatDecimal(sku.price/100.0,0,2)}"></i>                                </strong>                        </div>                        <div class="attr">                                <em th:text="${sku.name}"></em>                        </div>                        <div class="operate">                                <a href="success-cart.html" target="_blank" class="sui-btn btn-bordered btn-danger">加入购物车</a>                                <a href="javascript:void(0);" class="sui-btn btn-bordered">收藏</a>                        </div>                </div>        </li></ul>
点击商品分类,按商品分类对结果进行过滤查询,并且在查询条件列表中添加已经选择的商品分类标签,隐藏搜索面板中的商品分类一行。
点击条件标签的“×”,取消该过滤条件
2.2 实现思路
(1)商品分类列表的显示使用聚合查询
(2)使用过滤查询//2.2 商品分类列表Aggregations aggregations = searchResponse.getAggregations();Map<String, Aggregation> aggregationMap = aggregations.getAsMap();Terms terms = (Terms) aggregationMap.get("sku_category");List<? extends Terms.Bucket> buckets =  terms.getBuckets();List<String> categoryList=new ArrayList();for( Terms.Bucket bucket:buckets ){        categoryList.add(bucket.getKeyAsString());}resultMap.put("categoryList",categoryList);



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马