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

府谷网站建设自家电脑做网站

府谷网站建设,自家电脑做网站,谷德设计网百度百科,怎么给自己的网站更换域名说明#xff1a;elasticsearch查询操作除了使用DSL语句的方式#xff08;参考#xff1a;http://t.csdn.cn/k7IGL#xff09;#xff0c;也可以使用API的方式。 准备 使用前需先导入依赖 !--RestHighLevelClient依赖--dependencygroupIdorg.ela…说明elasticsearch查询操作除了使用DSL语句的方式参考http://t.csdn.cn/k7IGL也可以使用API的方式。 准备 使用前需先导入依赖 !--RestHighLevelClient依赖--dependencygroupIdorg.elasticsearch.client/groupIdartifactIdelasticsearch-rest-high-level-client/artifactId/dependency创建一个测试类查询操作代码都写在测试类里面首先先建立RestHighLevelClient的连接 /*** 定义连接*/private RestHighLevelClient client;/*** 初始化客户端*/BeforeEachpublic void init(){client new RestHighLevelClient(RestClient.builder(HttpHost.create(http://服务器IP地址:9200)));}/*** 关闭客户端* throws IOException*/AfterEachpublic void close() throws IOException {client.close();}1、模糊查询 1全部查询 查询student索引库的所有文档 /*** 1.1 全部查询* throws IOException*/Testpublic void queryMatchAll() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().equals(QueryBuilders.matchAllQuery());// 3.发送请求SearchResponse response client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印SearchHits hits response.getHits();// 遍历hisfor (SearchHit hit : hits) {// 获取字符串String json hit.getSourceAsString();// 解析字符串成对象StudentDoc studentDoc JSON.parseObject(json, StudentDoc.class);// 打印System.out.println(studentDoc studentDoc);}可以看到API方式的全查默认还是值返回前10条 把解析返回值的代码抽取出来成一个方法方便后面使用 /*** 解析返回值并打印* param response*/private void parseJson(SearchResponse response) {// 获取his数据SearchHits hits response.getHits();// 遍历hisfor (SearchHit hit : hits) {// 获取字符串String json hit.getSourceAsString();// 解析字符串成对象StudentDoc studentDoc JSON.parseObject(json, StudentDoc.class);// 打印System.out.println(studentDoc studentDoc);}}2单字段查询 例如查询all字段值为马尔克斯的文档 /*** 1.2 单字段查询* throws IOException*/Testpublic void queryMatch() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().query(QueryBuilders.matchQuery(all,马尔克斯));// 3.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印parseJson(search);}代码执行完成查询成功 3多字段查询 例如查询name、username和gender字段值包括“陀”的文档 /*** 1.3 多字段查询* throws IOException*/Testpublic void multiMatchQuery() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.创建DSL语句request.source().query(QueryBuilders.multiMatchQuery(陀,name,username,gender));// 3.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印parseJson(search);}代码执行完成查询成功 2、精确查询 1term查询 例如查询name值为杜甫的文档 /*** 2.1 term查询* throws IOException*/Testpublic void termQuery() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.创建DSL语句request.source().query(QueryBuilders.termQuery(name,杜甫));// 3.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印parseJson(search);}查询完成 2range查询 例如查询job大于1小于等于3的文档 /*** 2.2 range查询* throws IOException*/Testpublic void rangeQuery() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().query(QueryBuilders.rangeQuery(job).gt(1).lte(3));// 3.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印parseJson(search);}查询完成 3、复合查询 例如查询all字段为萨特并且job≥2≤4的文档 /*** 3. 复合查询* throws IOException*/Testpublic void booleanQuery() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().query(QueryBuilders.boolQuery().must(QueryBuilders.matchQuery(all,萨特)).filter(QueryBuilders.rangeQuery(job).gte(2).lte(4)));// 3.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 4.解析返回值并打印parseJson(search);}查询完成因为萨特的job1所以未查询出来 更换job条件为≥1再查询可以查询出来 4、分页、排序查询 例如查询job≥1≤4按照job降序排序并且从第2条文档开始往后取8条 /*** 4. 分页、排序查询* throws IOException*/Testpublic void queryByPageAndSort() throws IOException {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().query(QueryBuilders.rangeQuery(job).gte(1).lte(4));// 3.分页查询查询从第2条开始往后8条request.source().from(2).size(8);// 4.排序request.source().sort(job, SortOrder.DESC);// 5.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 6.解析返回值并打印parseJson(search);}全部符合条件的记录 分页、排序查询后可以看到只有当前页的内容并且job按照升序排序 从结果可以看出from()中的索引是从0开始的from(2)表示从第三条开始计算 5、高亮查询 例如把name等于关羽的文档name字段的值设置为斜体em /*** 6.高亮显示*/Testpublic void heightLight() throws Exception {// 1.创建请求SearchRequest request new SearchRequest(student);// 2.编写DSL语句request.source().query(QueryBuilders.matchQuery(name,关羽));// 3.声明高亮显示request.source().highlighter(new HighlightBuilder().field(name).requireFieldMatch(false));// 4.发送请求SearchResponse search client.search(request, RequestOptions.DEFAULT);// 5.解析返回值SearchHits hits search.getHits();// 6.遍历hisfor (SearchHit hit : hits) {// 7.获取字符串String json hit.getSourceAsString();// 8.解析字符串成对象StudentDoc studentDoc JSON.parseObject(json, StudentDoc.class);// 9.获取高亮字段MapString, HighlightField highlightFields hit.getHighlightFields();// 10.判断高亮字段不能为空if (!CollectionUtils.isEmpty(highlightFields)) {// 11.获取高亮字段值HighlightField highlightField highlightFields.get(name);// 12.判断高亮字段值不等于空if (highlightField ! null){// 13.获取高亮字段值String heightFightName highlightField.getFragments()[0].string();// 14.将高亮字段值重新赋值给对象并打印studentDoc.setName(heightFightName);System.out.println(studentDoc studentDoc);}}}}执行代码可以看到关羽的name字段值被em标签包裹
http://www.dnsts.com.cn/news/148010.html

相关文章:

  • 网站开发环境ide首页2免费空间
  • 新站秒收录接口网站建设设计设计公司哪家好
  • 网站灰色代码自助网站制作系统源码
  • windows2008 iis网站 指定域名深圳市龙华区平安医院
  • 58同城网站建设经营管理培训课程
  • 山西网站搜索排名优化公司导航主题wordpress
  • 东莞做营销网站建设神农架网页设计
  • 更换网站后台管理系统智通人才招聘网最新招聘
  • 门户手机版网站网页制作最常用的软件
  • 手机微信官方网站首页企业logo设计网站
  • 如何将数据库导入网站凡诺网站建设
  • 浮梁网站推广网站建设需求说明
  • 企业自建站烟台莱州网站建设
  • 南京网站建设企业搜索网站排行榜
  • 学校网站建设的背景企业营销策划经营范围
  • 网站为什么需要空间成都设计公司排名前十强
  • 合肥长丰路网站建设网站开发实例模板
  • 仿牌网站流量app开发公司的组织架构
  • 做外贸国外网站南昌官网seo诊断
  • 南宁建网站必荐云尚网络如何介绍网站建设公司
  • 网站建设哪家公司好一点国家免费职业技能培训官网
  • 有哪些网站系统网上商城是什么意思
  • 柯桥区网站建设运维工程师主要做什么
  • 用php做网站不用框架手把手教你优化网站
  • 企业网站的内容选题来源人才培训网
  • 网站后台管理的超级链接怎么做如何优化网站性能
  • 全球做的比较好的网站有哪些杭州企业网站制作加驰牛科技
  • 现在手机网站用什么做毕设做网站怎么弄代码设计
  • 域名注册好了怎么做网站国家住房建设部网站
  • 网站流量分析手机软件开发外包