solr搜尋(專案中實現)
阿新 • • 發佈:2019-01-24
確定搜尋關鍵字:
分析關鍵字,通過名稱
、商品編號
、訂單號搜尋
:
使用資料庫實現搜尋:
- 效能差,使用solr搜尋:
- a)下單成功後,將訂單資料寫入到solr中
- b)從solr中所搜:使用三個欄位
orderId:Apple
ortitle:Apple
oritemId:Apple
定義solr的資料結構:
solr
的配置檔案:core.properties
name=order
conf/schema.xml
結構定義:
需要的欄位:orderId 、 itemTitle 、itemId 、userId
輔佐欄位:createTime
將三個欄位內容拷貝到一個欄位,根據這個欄位搜尋。
啟動solr
- 寫入訂單資料到solr
- a) 歷史訂單資料
查詢訂單系統介面資料,寫入到solr - b)監聽下單成功後的訊息,將訂單資料寫入到solr
使用HttpSolrServlet
時,需要指定baseUrl
(到 order core
)
this.httpSolrService.setBasrUrl(TAOTAO_ORDER_SOLR);
使用uuid生成
在solr中修改一些引數:
新增
修改update
生成資料及效果:
程式碼實現與整合:
首先在搜尋框中,填寫關鍵字:
表單提交與相應的js操作方法:
提交到相對路徑為:
/ucenter/my/orders/search.html
的UcenterController
處理,主要是呼叫UcenterService的search()方法去調用搜索系統: search()方法去調用搜索系統TAOTAO_SEARCH_URL
:
根據訂單號查詢訂單: