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

上海自助建站上海网站建设深圳网站建设 营销

上海自助建站上海网站建设,深圳网站建设 营销,腾讯企业邮箱登录入口免费版,国内最好的搜索引擎Elasticsearch集成Spring Boot 概述 Spring Data Elasticsearch 介绍一、环境初始化二、实战入门1、定义数据实体类2、定义Dao层3、框架集成-SpringData-集成测试-索引操作4、框架集成-SpringData-集成测试-文档操作5、框架集成-SpringData-集成测试-文档搜索 概述 Spring Data… Elasticsearch集成Spring Boot 概述 Spring Data Elasticsearch 介绍一、环境初始化二、实战入门1、定义数据实体类2、定义Dao层3、框架集成-SpringData-集成测试-索引操作4、框架集成-SpringData-集成测试-文档操作5、框架集成-SpringData-集成测试-文档搜索 概述 Spring Data Elasticsearch 介绍 Spring Data Elasticsearch基于Spring Data API简化 Elasticsearch 操作将原始操作Elasticsearch 的客户端API进行封装。Spring Data为Elasticsearch 项目提供集成搜索引擎。Spring Data Elasticsearch POJO的关键功能区域为中心的模型与Elastichsearch交互文档和轻松地编写一个存储索引库数据访问层简单的来说是类似于Mybatis-Plus操作。 一、环境初始化 1、引入依赖 !-- elasticsearch--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-elasticsearch/artifactId/dependency2、增加配置文件配置 # es搜索elasticsearch:uris: http://localhost:9200#设置有用户和密码可以取消注释 # username: root # password: 1234二、实战入门 1、定义数据实体类 Data NoArgsConstructor AllArgsConstructor ToString /** indexName :索引库名称 shards集群片相关 */ Document(indexName shopping, shards 3, replicas 1) public class Product {//必须有 id,这里的 id 是全局唯一的标识等同于 es 中的_idIdprivate Long id;//商品唯一标识/*** type : 字段数据类型* analyzer : 分词器类型* index : 是否索引(默认:true)* Keyword : 短语,不进行分词*/Field(type FieldType.Text, analyzer ik_max_word)private String title;//商品名称Field(type FieldType.Keyword)private String category;//分类名称Field(type FieldType.Double)private Double price;//商品价格Field(type FieldType.Keyword, index false)private String images;//图片地址 }2、定义Dao层 /*** 题目 ES 操作** author a hrefhttps://github.com/xuyuan-upward许苑向上/a*/ public interface ProductDao extends ElasticsearchRepositoryProduct , Long {ListProduct findByUserId(Long userId); }3、框架集成-SpringData-集成测试-索引操作 RunWith(SpringRunner.class) SpringBootTest public class SpringDataESIndexTest {//注入 ElasticsearchRestTemplateAutowiredprivate ElasticsearchRestTemplate elasticsearchRestTemplate;//创建索引并增加映射配置Testpublic void createIndex(){//创建索引系统初始化会自动创建索引System.out.println(创建索引);}Testpublic void deleteIndex(){//创建索引系统初始化会自动创建索引boolean flg elasticsearchRestTemplate.deleteIndex(Product.class);System.out.println(删除索引 flg);} }4、框架集成-SpringData-集成测试-文档操作 RunWith(SpringRunner.class) SpringBootTest public class SpringDataESProductDaoTest {Autowiredprivate ProductDao productDao;/*** 新增*/Testpublic void save(){Product product new Product();product.setId(2L);product.setTitle(华为手机);product.setCategory(手机);product.setPrice(2999.0);product.setImages(http://www.atguigu/hw.jpg);productDao.save(product);}//POSTMAN, GET http://localhost:9200/product/_doc/2//修改Testpublic void update(){Product product new Product();product.setId(2L);product.setTitle(小米 2 手机);product.setCategory(手机);product.setPrice(9999.0);product.setImages(http://www.atguigu/xm.jpg);productDao.save(product);}//POSTMAN, GET http://localhost:9200/product/_doc/2//根据 id 查询Testpublic void findById(){Product product productDao.findById(2L).get();System.out.println(product);}Testpublic void findAll(){IterableProduct products productDao.findAll();for (Product product : products) {System.out.println(product);}}//删除Testpublic void delete(){Product product new Product();product.setId(2L);productDao.delete(product);}//POSTMAN, GET http://localhost:9200/product/_doc/2//批量新增Testpublic void saveAll(){ListProduct productList new ArrayList();for (int i 0; i 10; i) {Product product new Product();product.setId(Long.valueOf(i));product.setTitle([i]小米手机);product.setCategory(手机);product.setPrice(1999.0 i);product.setImages(http://www.atguigu/xm.jpg);productList.add(product);}productDao.saveAll(productList);}//分页查询Testpublic void findByPageable(){//设置排序(排序方式正序还是倒序排序的 id)Sort sort Sort.by(Sort.Direction.DESC,id);int currentPage0;//当前页第一页从 0 开始 1 表示第二页int pageSize 5;//每页显示多少条//设置查询分页PageRequest pageRequest PageRequest.of(currentPage, pageSize,sort);//分页查询PageProduct productPage productDao.findAll(pageRequest);for (Product Product : productPage.getContent()) {System.out.println(Product);}} }5、框架集成-SpringData-集成测试-文档搜索 RunWith(SpringRunner.class) SpringBootTest public class SpringDataESSearchTest {Autowiredprivate ProductDao productDao;/*** term 查询* search(termQueryBuilder) 调用搜索方法参数查询构建器对象*/Testpublic void termQuery(){TermQueryBuilder termQueryBuilder QueryBuilders.termQuery(title, 小米);IterableProduct products productDao.search(termQueryBuilder);for (Product product : products) {System.out.println(product);}}/*** term 查询加分页*/Testpublic void termQueryByPage(){int currentPage 0 ;int pageSize 5;//设置查询分页PageRequest pageRequest PageRequest.of(currentPage, pageSize);TermQueryBuilder termQueryBuilder QueryBuilders.termQuery(title, 小米);IterableProduct products productDao.search(termQueryBuilder,pageRequest);for (Product product : products) {System.out.println(product);}}}
http://www.w-s-a.com/news/22580/

相关文章:

  • 上海网站建设 觉策动力wordpress接口开发
  • 网站建设服务器的选择方案小型视频网站建设
  • 江宁做网站价格扬州立扬计算机培训网站建设怎么样
  • 手表网站背景开发新客户的十大渠道
  • 定制网站设计wordpress写的网站
  • p2p网站建设公司排名成都装饰公司
  • 网站被k怎么恢复wordpress缓存类
  • 做外贸有哪些网站平台最近文章 wordpress
  • joomla网站模板一个人做网站的swot
  • 南京建设网站需要多少钱深圳专业网站建设制作价格
  • 天河建网站装修公司线上推广方式
  • 超市网站怎么做的目前最流行的拓客方法
  • 做文字logo的网站贵阳商城网站开发
  • 沧州有没有做网站的中国建筑设计
  • 建设网站 系统占用空间在线代理浏览网站
  • 做海报有什么参考的网站网站建设验收合同
  • 酒店网站制作wordpress文章评论设置
  • 造一个官方网站wordpress mysql类
  • 怎么做卡商网站河南做网站找谁
  • 网站建设招标方案模板上线啦 图谱智能网站
  • 龙口网站建设公司哪家好wordpress 上传类型
  • 做外贸主要看什么网站服务平台的宗旨
  • 宜昌营销型网站购买网站
  • 如何查询网站建设时间wordpress 框架解析
  • 网站建设年终总结网站建设公司顺义
  • 网页给别人做的 网站后续收费吗获取更多付费流量
  • 金融交易网站建设金融 网站建设
  • 长沙网站建设联系电话怎么做表格
  • 网站怎么做域名实名认证龙华网站 建设信科网络
  • 企业网站规划方案网站是做排行榜