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

网站建设验收总结讲话线上营销平台有哪些

网站建设验收总结讲话,线上营销平台有哪些,郴州录取网站,资源开发公司经营范围目录 前言 Procuct实体类 一、操作索引 二、操作文档 三、查询文档 四、复杂条件查询 五、分页查询 六、结果排序 本文文章介绍的是通过template的方法操作elasticsearch,他的话直接本地注入使用就行,repository方法还需要实现接口,所…

目录

前言

Procuct实体类

一、操作索引

二、操作文档

三、查询文档

四、复杂条件查询

五、分页查询

六、结果排序


本文文章介绍的是通过template的方法操作elasticsearch,他的话直接本地注入使用就行,repository方法还需要实现接口,所以我个人喜欢template(他还支持复杂查询嘞!)

前言

Procuct实体类

@Document(indexName = "product",createIndex = true)
@Data
@AllArgsConstructor
public class Product {@Id@Field(type = FieldType.Integer,store = true,index = true)private Integer id;@Field(type = FieldType.Text,store = true,index = true,analyzer = "ik_max_word",searchAnalyzer = "ik_max_word")private String productName;@Field(type = FieldType.Text,store = true,index = true,analyzer = "ik_max_word",searchAnalyzer = "ik_max_word")private String productDesc;
}

一、操作索引

@SpringBootTest
public class TemplateTest {@Autowiredprivate ElasticsearchTemplate template;// 新增索引@Testpublic void addIndex() {// 获得索引操作对象IndexOperations indexOperations = template.indexOps(Product.class);// 创建索引,注:该方法无法设置索引结构,不推荐使用indexOperations.create();}// 删除索引@Testpublic void delIndex() {// 获得索引操作对象IndexOperations indexOperations = template.indexOps(Product.class);// 删除索引indexOperations.delete();}
}

不过一般我们创建索引在实体类创建时就创建或者是在kibna中自己创建就行!

二、操作文档

// 新增/修改文档
@Test
public void addDocument() {Product product = new Product(7, "es1", "es是一款优秀的搜索引擎");template.save(product);
}// 删除文档
@Test
public void delDocument() {template.delete("7", Product.class);
}// 根据id查询
@Test
public void findAllDocument() {Product product = template.get("1", Product.class);System.out.println(product);
}

三、查询文档

template的search方法可以查询文档

SearchHits<T> search(Query query, Class<T> clazz):查询文档,query是查询条件对象,clazz是结果类型。
// 查询文档2
@Test
public void searchDocument2() {String productName = "三体";String productDesc = "优秀";// 1.构建查询条件NativeQuery query=new NativeQueryBuilder().withQuery(Queries.matchAllQueryAsQuery()).build();// 2.查询SearchHits<Product> result = template.search(query, Product.class);// 3.处理查询结果for (SearchHit<Product> productSearchHit : result) {Product product = productSearchHit.getContent();System.out.println(product);}
}

四、复杂条件查询

// 复杂查询
@Test
public void searchDocument2(){String productName = "三体";String productDesc = "优秀";// 1.构造查询条件NativeQueryBuilder nativeQueryBuilder = new NativeQueryBuilder();// 如果没有传入参数,查询所有if (productName == null && productDesc == null){nativeQueryBuilder.withQuery(Queries.matchAllQueryAsQuery());}else {BoolQuery.Builder boolQuery = QueryBuilders.bool();if (productName != null){boolQuery.must(Queries.matchQueryAsQuery("productName",productName,null,null));}if (productDesc != null){boolQuery.must(Queries.matchQueryAsQuery("productDesc",productDesc,null,null));}nativeQueryBuilder.withQuery(boolQuery.build()._toQuery());}NativeQuery query = nativeQueryBuilder.build();// 2.查询SearchHits<Product> result = template.search(query, Product.class);// 3.处理查询结果for (SearchHit<Product> productSearchHit : result) {Product product = productSearchHit.getContent();System.out.println(product);}
}

五、分页查询

// 分页查询文档
@Test
public void searchDocumentPage() {// 1.构建查询条件Pageable pageable = PageRequest.of(0, 3);NativeQuery query = new NativeQueryBuilder().withQuery(Queries.matchAllQueryAsQuery()).withPageable(pageable).build();// 2.查询SearchHits<Product> result = template.search(query, Product.class);// 3.处理查询结果List<Product> content = new ArrayList();for (SearchHit<Product> productSearchHit : result) {Product product = productSearchHit.getContent();content.add(product);}/*** 封装Page对象,参数1:具体数据,参数2:分页条件对象,参数3:总条数*/Page<Product> page = new PageImpl(content, pageable, result.getTotalHits());System.out.println(page.getTotalElements());System.out.println(page.getTotalPages());System.out.println(page.getContent());
}

六、结果排序

// 结果排序
@Test
public void searchDocumentSort() {// 1.构建查询条件NativeQuery query = new NativeQueryBuilder().withQuery(Queries.matchAllQueryAsQuery()).withSort(Sort.by(Sort.Direction.DESC, "id")).build();// 2.查询SearchHits<Product> result = template.search(query, Product.class);// 3.处理查询结果for (SearchHit<Product> productSearchHit : result) {Product product = productSearchHit.getContent();System.out.println(product);}
}

http://www.yidumall.com/news/107529.html

相关文章:

  • 嘉兴微信网站建设怎样推广品牌
  • 免费域名注册网站哪个好seo站内优化和站外优化
  • 杭州北京网站建设南宁seo做法哪家好
  • wordpress去除google字体搜索引擎优化策略应该包括
  • 在那个网站找模具做手机百度2022年新版本下载
  • wordpress 多用户优化方案官方网站
  • 上海黄浦网站建设优化关键词首页排行榜
  • 企业网站管理系统推荐网站怎么打开
  • 天津建立网站营销设计网络营销五个特点
  • 做网站的都是直男癌吗百度seo快排软件
  • 关于申请开通网站建设的请示免费com网站域名注册
  • 临沂网站建设有哪些互联网营销师在哪里报名
  • 清苑区建设局网站中国十大经典广告
  • 哪里建个人网站好百度免费推广有哪些方式
  • 做技能培训和那个网站合作好广州信息流推广公司排名
  • 手机网站怎么做的付费推广平台有哪些
  • 建设工程敎育那个网站微信营销案例
  • 网站本地被劫要怎么做合肥百度竞价推广代理公司
  • 属于网站的管理 更新 维护百度文库个人登录
  • 做身份证网站网站seo方案案例
  • 制作网站公司年收入多少企业文化
  • 网站应包括的基本功能和高级功能网站建设策划书范文
  • 做编程的+网站有哪些内容网络代运营推广
  • html5导航网站源码阿里网站seo
  • 建设工程造价网站百度服务商平台
  • 贵阳网站制作贵阳网站建设哪家好百度竞价推广托管
  • 淄博市沂源县城乡建设局网站什么平台发广告最有效
  • 建e网站官网案例怎样做好网络推广呀
  • 如何优化网站性能小说关键词提取软件
  • wordpress备案信息代码狼雨seo网站