JavaEE-面试-Solr面试回答思路

本文详细介绍了Solr作为全文检索技术的基础概念,对比了Elasticsearch,并深入探讨了Solr的服务端与客户端操作,包括索引库管理和各种搜索条件的应用。同时,文章还分享了在实际项目中如何利用Solr完成复杂搜索任务的经验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 是什么?

化繁为简的介绍一下这个技术是干嘛的

solr是基于Lucene的,主要用作全文检索。

2. 同类型技术

ElasticSearch,这个时候很自然的需要去了解两种技术的简单区别。
ElasticSearchvs Solr多维度分析对比

3. 大概介绍介绍?

最好加入自己的一些心得和总结

2个端(服务端+客户端)

涉及到服务器安装配置客户端操作

服务端,安装就是解压一个war包,添加一些jar包,配置scheme.xml

solr的客户端,客户端操作可以用solrj或者spring-data-solr,到时候也可以进行二次封装,也可以不需要,因为都是封装给了service层,controller直接传入对象给service层就可以了。

项目使用spring-data-solor的情况

 

项目使用solrj的情况

solr的客户端,主要就是学会索引库的操作各种条件的搜索

索引库的操作

新增、删除、更新

各种条件的搜索

  1. 普通域查询
  2. 复制域查询
  3. 动态域查询
  4. 分页查询
  5. 分组查询
  6. 高亮查询
  7. 过滤查询
  8. 区间查询
  9. 排序查询

4. 具体使用

这里开始再说具体的使用

服务端安装

  • 解压一个solr-4.10.3.war
  • 拷贝example/lib/ext下的日志输出包

  • 配置solrhome

配置(修改schema.xml)

配置中文分词器,IK Analyzer
配置域、复制域、动态域

客户端操作

这里开始再说具体的使用
能记住记过算几个,记不住也正常

a) solrj

关键的几个类
主要是solrServer完成文档操作和搜索
solrServerSolrInputDocumentSolrQuerySearchResult

b) spring-data-solr

关键的几个类
主要是SolrTemplate完成文档操作和搜索
SolrTemplateQueryCriteria

5. 实际应用场景

这个是非常重要的,实际项目中用solr完成了什么,也可以优先告知面试官。

6. 可以拓展拓展

solr会考虑集群
solr索引库在商品状态发生改变的时候(审核通过、删除),会通过activeMQ通知更新。
solr搜索结果,可以通过redis缓存

7. 表表态

solr还是不难,自己做搜索没啥问题,大概2、3天就能完成复杂的搜索情况。



作者:黑马程序员伍老师
链接:https://www.jianshu.com/p/3bd54751265c
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值