1.为什么要使用复制域?
使用一个条件搜索(比如标题、品牌、分类、商家等)多个域,使用复制域可以实现搜索一个域名来搜索多个域的目的。
2.怎么使用复制域?
a.在pojo配置复制域,设置域的copyTo="域名",重新导入数据.
b.使用QueryBuidlers创建QueryBuidler对象,指定设置的域名.
3.为什么要使用嵌套域?
SKU的规格是以json的格式存储在数据库,每个分类的规格不相同,指定分类后搜索规格,规格的域名都不确定,就不能搜索.
使用嵌套域可以动态构建各种域名.
4.怎么使用嵌套域?
a.在pojo配置嵌套域,用Map<key,value>创建嵌套域,key是域名,value是值.嵌套域的类型是Nested.
b.在导入文档数据的时候,给嵌套域设置一个Map值.
5.elasticsearch有哪些查询方式?
a.使用dao查询文档
b.使用elasticsearchTemplate查询文档
elasticsearchTemplate的功能比dao更强大,比如通配符搜索和分词匹配搜索只能使用template来查询.
普通的增删改操作一般使用dao,查询一般使用elasticsearchTemplate
6.怎么把数据库的数据导入Elasticsearch?
a.用通用Mapper把数据库的数据查询出来
b.把查询的结果集组装成文档实体类的集合,可以Spring的BeanUtils工具类.
c.调用dao的saveAll方法,保存整个集合.
7.嵌套域怎么导入?
把数据库的json串转换成一个Map对象,把Map对象设置到嵌套域,就可以一起导入文档.