当前位置: 首页 > news >正文

宜昌最权威网站建设公司网络营销与直播电商专业就业方向

宜昌最权威网站建设公司,网络营销与直播电商专业就业方向,mg线上注册,wordpress源码买卖目录 一、实现输入搜索功能 1、下载代码#xff0c;在idea上打开 2、新建RequestParams类#xff0c;用于接收解析请求 3、在启动类中加入客户端地址Bean#xff0c;以便实现服务 4、编写搜索方法 5、新建返回分页结果类 6、实现搜索方法 7、编写控制类#xff0c;…目录 一、实现输入搜索功能 1、下载代码在idea上打开 2、新建RequestParams类用于接收解析请求 3、在启动类中加入客户端地址Bean以便实现服务 4、编写搜索方法 5、新建返回分页结果类 6、实现搜索方法 7、编写控制类接收请求 8、运行代码测试功能 1检索功能 2分页功能 二、添加品牌、城市、星级、价格等过滤功能 1、修改RequestParams类 2、更改service类 3、启动并测试 三、实现排序功能 1、修改RequestParams类 2、在PageResult类中增加排序算法 3、修改HotelDoc类增加Distance属性 4、修改解析JSON的方法 四、实现广告置顶功能 1、修改HotelDoc类增加isAD属性 2、在service实现类中添加算分方法 3、运行测试 一、实现输入搜索功能 1、下载代码在idea上打开 2、新建RequestParams类用于接收解析请求 Data public class RequestParams {private String key;private Integer page;private Integer size;private String sortBy; } 3、在启动类中加入客户端地址Bean以便实现服务 Beanpublic RestHighLevelClient client(){return new RestHighLevelClient(RestClient.builder(HttpHost.create(http://192.168.248.152:9200)));} 4、编写搜索方法 PageResult search(RequestParams params); 5、新建返回分页结果类 Data public class PageResult {private long total;private ListHotelDoc hotels;public PageResult() {}public PageResult(long total, ListHotelDoc hotels) {this.total total;this.hotels hotels;} } 6、实现搜索方法 Service public class HotelService extends ServiceImplHotelMapper, Hotel implements IHotelService {Autowiredprivate RestHighLevelClient client;Overridepublic PageResult search(RequestParams params) { // 准备Request对象try {SearchRequest request new SearchRequest(hotel);String key params.getKey(); // 准备DSLif (keynull || .equals(key)){request.source().query(QueryBuilders.matchAllQuery());}else {request.source().query(QueryBuilders.matchQuery(name, key));} // 分页Integer page params.getPage();Integer size params.getSize();request.source().from((page-1)*size).size(size); // 发送请求SearchResponse response client.search(request, RequestOptions.DEFAULT);return extracted(response);} catch (IOException e) {throw new RuntimeException(e);}}private PageResult extracted(SearchResponse response) { // 解析响应SearchHits searchHits response.getHits(); // 获取总条数long value searchHits.getTotalHits().value;System.out.println(共搜索到 value 条数据!); // 获取文档数组SearchHit[] hits searchHits.getHits();ArrayListHotelDoc list new ArrayList(); // 遍历for (SearchHit hit : hits) { // 获取文档sourceString json hit.getSourceAsString(); // 反序列化HotelDoc object JSON.parseObject(json, HotelDoc.class);list.add(object); // 获取高亮结果MapString, HighlightField highlightFields hit.getHighlightFields();if (!CollectionUtils.isEmpty(highlightFields)){ // 根据字段名获取高亮结果HighlightField highlightField highlightFields.get(name);if (highlightFields ! null){ // 获取高亮值String name highlightField.getFragments()[0].string(); // 覆盖非高亮结果object.setName(name);}} // System.out.println(object object);}return new PageResult(value,list);} } 7、编写控制类接收请求 RestController RequestMapping(/hotel) public class HotelController {Autowiredprivate IHotelService service;PostMapping(/list)public PageResult search(RequestBody RequestParams params){return service.search(params);} } 8、运行代码测试功能 1检索功能 2分页功能 二、添加品牌、城市、星级、价格等过滤功能 1、修改RequestParams类 Data public class RequestParams {private String key;private Integer page;private Integer size;private String sortBy;private String city;private String brand;private String starName;private Integer maxPrice;private Integer minPrice; } 2、更改service类 Overridepublic PageResult search(RequestParams params) { // 准备Request对象try {SearchRequest request new SearchRequest(hotel);buildBasicQuery(params, request); // 分页Integer page params.getPage();Integer size params.getSize();request.source().from((page-1)*size).size(size); // 发送请求SearchResponse response client.search(request, RequestOptions.DEFAULT);return extracted(response);} catch (IOException e) {throw new RuntimeException(e);}}private void buildBasicQuery(RequestParams params, SearchRequest request) {String key params.getKey();BoolQueryBuilder boolQuery QueryBuilders.boolQuery();if (keynull || .equals(key)){boolQuery.must(QueryBuilders.matchAllQuery());}else {boolQuery.must(QueryBuilders.matchQuery(all, key));} // 城市条件if (params.getCity() ! null !params.getCity().equals()){boolQuery.filter(QueryBuilders.termQuery(city, params.getCity()));} // 品牌条件if (params.getBrand() ! null !params.getBrand().equals()){boolQuery.filter(QueryBuilders.termQuery(brand, params.getBrand()));} // 星级条件if (params.getStarName() ! null !params.getStarName().equals()){boolQuery.filter(QueryBuilders.termQuery(starName, params.getStarName()));} // 价格if (params.getMinPrice() ! null params.getMaxPrice() ! null){boolQuery.filter(QueryBuilders.rangeQuery(price).gte(params.getMinPrice()).lte(params.getMaxPrice()));} // 准备DSLrequest.source().query(boolQuery);} 3、启动并测试 三、实现排序功能 1、修改RequestParams类 // 排序String location params.getLocation();if (location ! null !location.equals()){request.source().sort(SortBuilders.geoDistanceSort(location,new GeoPoint(location)).order(SortOrder.ASC).unit(DistanceUnit.KILOMETERS));} 2、在PageResult类中增加排序算法 String location params.getLocation();if (location ! null !location.equals()){request.source().sort(SortBuilders.geoDistanceSort(location,new GeoPoint(location)).order(SortOrder.ASC).unit(DistanceUnit.KILOMETERS));} 3、修改HotelDoc类增加Distance属性 private Object distance; 4、修改解析JSON的方法 // 获取排序值Object[] sortValues hit.getSortValues();if (sortValues.length 0){Object sortValue sortValues[0];object.setDistance(sortValue);} 四、实现广告置顶功能 1、修改HotelDoc类增加isAD属性 private Boolean isAD; 2、在service实现类中添加算分方法 // 算分控制FunctionScoreQueryBuilder functionScoreQuery QueryBuilders.functionScoreQuery(boolQuery,new FunctionScoreQueryBuilder.FilterFunctionBuilder[]{new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.termQuery(isAD,true),//过滤条件ScoreFunctionBuilders.weightFactorFunction(10) //分值*10)}); 3、运行测试
http://www.huolong8.cn/news/18348/

相关文章:

  • 从零开始学网站建设建设厅网站合同备案在哪里
  • 制作钓鱼网站的费用重庆品牌餐饮加盟网站建设
  • wordpress里网站名称在哪里修改西夏区建设交通网站
  • 如何对网站做优化南桥做网站
  • 如何做淘宝的站外网站推广东莞企业为什么网站建设
  • 网站建设与网络编辑心得体会互联网技术的特征
  • 做视频网站用什么服务器配置手机wordpress主题
  • ps做的图怎么做成网站前端东莞大型企业
  • 骨干校建设专题网站网站流量 钱
  • 网站建设服务器维护内容2021年企业所得税优惠政策最新
  • 衡水网站设计怎么做东莞城市规划局
  • 网站制作加教程视频教程wordpress苏醒主题grace
  • 利用js做简单的网站wordpress登录后搜索
  • 合肥专业做淘宝网站建设wordpress 链接无效
  • 成都设计网站的公司名称河南新乡市建设银行网站
  • 站酷官网入口php 信息分类网站开发
  • 营销型网站建设案例分析wordpress移动端加底部导航栏
  • 嵌入式软件开发程序员济南网站优化推广公司
  • 合肥哪里做网站益阳网络推广
  • 云网站建设017年青电器网站建设
  • 做网站现在赚钱吗英文网站 建站
  • 企业网站优化兴田德润安庆做网站哪个公司好
  • 网站源码如何优化如何查询自己的企业邮箱
  • 做统计图的网站中国建设通网站
  • 做网站备案的问题产品推荐词
  • 汽车4S店网站建设注册小程序需要什么条件
  • 找外包做网站要多久legenda wordpress主题
  • 一起做网店网站入驻收费网站定制公司
  • 贵州手机网站建设wordpress 优秀站点
  • 门户网站制作定做加强品牌建设