1. 程式人生 > >JavaEE-面試-Solr面試回答思路

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

化繁為簡的介紹一下這個技術是幹嘛的

solr是基於Lucene的,主要用作全文檢索。

最好加入自己的一些心得和總結

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. 排序查詢

這裡開始再說具體的使用

服務端安裝

  • 解壓一個solr-4.10.3.war
  • 拷貝example/lib/ext下的日誌輸出包

  • 配置solrhome

配置(修改schema.xml)

配置中文分詞器,IK Analyzer 配置域、複製域、動態域

客戶端操作

這裡開始再說具體的使用 能記住記過算幾個,記不住也正常

a) solrj

關鍵的幾個類 主要是solrServer完成文件操作和搜尋solrServer

SolrInputDocumentSolrQuerySearchResult

b) spring-data-solr

關鍵的幾個類 主要是SolrTemplate完成文件操作和搜尋SolrTemplateQueryCriteria

這個是非常重要的,實際專案中用solr完成了什麼,也可以優先告知面試官。

solr會考慮叢集 solr索引庫在商品狀態發生改變的時候(稽核通過、刪除),會通過activeMQ通知更新。 solr搜尋結果,可以通過redis快取

7. 表表態

solr還是不難,自己做搜尋沒啥問題,大概2、3天就能完成複雜的搜尋情況。

作者:黑馬程式設計師伍老師 連結:https://www.jianshu.com/p/3bd54751265c 來源:簡書 簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。