當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringBoot+solr配置入门
生活随笔
收集整理的這篇文章主要介紹了
SpringBoot+solr配置入门
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.首先solr已經(jīng)配置完畢,并且含有數(shù)據(jù)
2.開始搭建工程
3.編寫配置文件
同樣找到resources下的application.propertis文件
集群和單機(jī)版配置有差別
3.1單機(jī)版 需要指定solr服務(wù)器的ip端口實(shí)例名
#配置單機(jī)版 單機(jī)版solr地址+實(shí)例名 spring.data.solr.host=http://192.168.10.101:8080/solr/collection13.2集群版需要配置solr服務(wù)器的zookeeper地址
#配置集群版 zookeeper的地址 spring.data.solr.zk-host=192.168.10.88:2181,192.168.10.88:2182,192.168.10.88:21834.在測試目錄進(jìn)行測試
4.1簡單測試查詢+分頁 集群版需要強(qiáng)轉(zhuǎn)CloudSolrClient
@Testpublic void findPage() throws IOException, SolrServerException {/*** 集群版CloudSolrClient繼承自SolrClient 進(jìn)行強(qiáng)轉(zhuǎn)* 單機(jī)版不需要直接使用solrClient*/CloudSolrClient cloudSolrClient =(CloudSolrClient)solrClient;//設(shè)置默認(rèn)的操作實(shí)例cloudSolrClient.setDefaultCollection("collection1");//設(shè)置查找的參數(shù)SolrQuery query = new SolrQuery();query.setQuery("item_title:手機(jī)");query.setStart(1);query.setRows(20);//執(zhí)行查找QueryResponse response = cloudSolrClient.query(query);SolrDocumentList documentList = response.getResults();for (SolrDocument entries : documentList) {String goodsName = (String) entries.getFieldValue("item_title");String id = (String)entries.getFieldValue("id");System.out.println(id+"-->"+goodsName);}}效果如下:2018-06-21 11:12:51.463 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:java.compiler=<NA> 2018-06-21 11:12:51.463 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:os.name=Windows 7 2018-06-21 11:12:51.464 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:os.arch=amd64 2018-06-21 11:12:51.464 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:os.version=6.1 2018-06-21 11:12:51.464 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:user.name=Administrator 2018-06-21 11:12:51.465 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:user.home=C:\Users\Administrator 2018-06-21 11:12:51.465 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Client environment:user.dir=D:\work_space\springbootdemo\springboot-solr 2018-06-21 11:12:51.470 INFO 8340 --- [ main] org.apache.zookeeper.ZooKeeper : Initiating client connection, connectString=192.168.10.88:2181,192.168.10.88:2182,192.168.10.88:2183 sessionTimeout=10000 watcher=org.apache.solr.common.cloud.SolrZkClient$3@68ed96ca 2018-06-21 11:12:51.636 INFO 8340 --- [168.10.88:2182)] org.apache.zookeeper.ClientCnxn : Opening socket connection to server 192.168.10.88/192.168.10.88:2182. Will not attempt to authenticate using SASL (unknown error) 2018-06-21 11:12:51.649 INFO 8340 --- [168.10.88:2182)] org.apache.zookeeper.ClientCnxn : Socket connection established to 192.168.10.88/192.168.10.88:2182, initiating session 2018-06-21 11:12:51.795 INFO 8340 --- [168.10.88:2182)] org.apache.zookeeper.ClientCnxn : Session establishment complete on server 192.168.10.88/192.168.10.88:2182, sessionid = 0x2642028d55b0000, negotiated timeout = 10000 2018-06-21 11:12:52.128 INFO 8340 --- [ main] o.a.solr.common.cloud.ZkStateReader : Updated live nodes from ZooKeeper... (0) -> (4) 2018-06-21 11:12:52.262 INFO 8340 --- [ main] o.a.s.c.s.i.ZkClientClusterStateProvider : Cluster at 192.168.10.88:2181,192.168.10.88:2182,192.168.10.88:2183 ready 1458729469-->海爾(Haier)HM-M209手機(jī) 老人機(jī) 老人手機(jī) 老年手機(jī) 直板手機(jī) 紅色 1458729470-->海爾(Haier)HM-M209手機(jī) 老人機(jī) 老人手機(jī) 老年手機(jī) 直板手機(jī) 黑色 1213323763-->唐為 TW509 GSM 移動(dòng)聯(lián)通2G手機(jī) 翻蓋手機(jī) 雙卡雙待 老人手機(jī) 金色 1202453093-->唐為 TW509 移動(dòng)聯(lián)通2G手機(jī) 翻蓋手機(jī) 雙卡雙待 老人手機(jī) 金色 1385872974-->迪士尼(Disney) Q611 兒童手機(jī) 黃色 967021-->TCL 老人手機(jī) (i310) 暗夜黑 移動(dòng)聯(lián)通2G手機(jī) 1305691-->TCL 老人手機(jī) (i310+) 暗夜黑 移動(dòng)聯(lián)通2G手機(jī) 1078460347-->大Q手機(jī) Q1 移動(dòng)3G手機(jī) 香檳金 官方標(biāo)配 1079894632-->優(yōu)思 (Uniscope) U6X 電信2G手機(jī) 迷你手機(jī) 粉 1286299689-->唐為 TW99A 移動(dòng)聯(lián)通2G手機(jī) 老人手機(jī) 紅色 1295341-->OPPO 1100 白色 聯(lián)通4G手機(jī) 1231490-->小米4 白色 聯(lián)通3G手機(jī) 1027857-->TCL 老人手機(jī) (i310) 純凈白 移動(dòng)聯(lián)通2G手機(jī) 1305682-->TCL 老人手機(jī) (i310+) 純凈白 移動(dòng)聯(lián)通2G手機(jī) 1074112714-->大Q手機(jī) Q1 移動(dòng)3G手機(jī) 高端黑 官方標(biāo)配 1079894631-->優(yōu)思 (Uniscope) U6X 電信2G手機(jī) 迷你手機(jī) 白 1309191989-->大Q手機(jī) Q1 4G版 移動(dòng)4G手機(jī) 黑色 1309191990-->大Q手機(jī) Q1 4G版 移動(dòng)4G手機(jī) 白色 1465889278-->HANMAC 星座系列 聯(lián)通3G 輕奢手機(jī) 射手座 985058-->派信(PISIN) WO1 NanoSmart 智能手表手機(jī)(藍(lán)色)
4.2配置字段高亮顯示
/*** 設(shè)置結(jié)果高亮顯示*/@Testpublic void hl() throws IOException, SolrServerException {/*** 集群版CloudSolrClient繼承自SolrClient 進(jìn)行強(qiáng)轉(zhuǎn)* 單機(jī)版不需要直接使用solrClient*/CloudSolrClient cloudSolrClient =(CloudSolrClient)solrClient;//設(shè)置默認(rèn)的操作實(shí)例cloudSolrClient.setDefaultCollection("collection1");//設(shè)置查找的參數(shù)SolrQuery query = new SolrQuery();query.setQuery("item_title:手機(jī)");//開啟高亮query.setHighlight(true);//設(shè)置高亮字段query.addHighlightField("item_title");//前綴query.setHighlightSimplePre("<font color='red'>");//后綴query.setHighlightSimplePost("</font>");//執(zhí)行查找QueryResponse response = cloudSolrClient.query(query);//打印高亮信息System.out.println(response.getHighlighting());}效果如下:
{1213323763={item_title=[唐為 TW509 GSM 移動(dòng)聯(lián)通2G<font color='red'>手機(jī)</font> 翻蓋<font color='red'>手機(jī)</font> 雙卡雙待 老人<font color='red'>手機(jī)</font> 金色]}, 1202453093={item_title=[唐為 TW509 移動(dòng)聯(lián)通2G<font color='red'>手機(jī)</font> 翻蓋<font color='red'>手機(jī)</font> 雙卡雙待 老人<font color='red'>手機(jī)</font> 金色]}, 1079894632={item_title=[優(yōu)思 (Uniscope) U6X 電信2G<font color='red'>手機(jī)</font> 迷你<font color='red'>手機(jī)</font> 粉]}, 1305691={item_title=[TCL 老人<font color='red'>手機(jī)</font> (i310+) 暗夜黑 移動(dòng)聯(lián)通2G<font color='red'>手機(jī)</font>]},1458729470={item_title=[海爾(Haier)HM-M209<font color='red'>手機(jī)</font> 老人機(jī) 老人<font color='red'>手機(jī)</font> 老年<font color='red'>手機(jī)</font> 直板<font color='red'>手機(jī)</font> 黑色]}, 967021={item_title=[TCL 老人<font color='red'>手機(jī)</font> (i310) 暗夜黑 移動(dòng)聯(lián)通2G<font color='red'>手機(jī)</font>]}, 1460827382={item_title=[海爾(Haier)HM-M209<font color='red'>手機(jī)</font> 老人機(jī) 老人<font color='red'>手機(jī)</font> 老年<font color='red'>手機(jī)</font> 直板<font color='red'>手機(jī)</font> 白色]}, 1078460347={item_title=[大Q<font color='red'>手機(jī)</font> Q1 移動(dòng)3G<font color='red'>手機(jī)</font> 香檳金 官方標(biāo)配]}, 1385872974={item_title=[迪士尼(Disney) Q611 兒童<font color='red'>手機(jī)</font> 黃色]}, 1458729469={item_title=[海爾(Haier)HM-M209<font color='red'>手機(jī)</font> 老人機(jī) 老人<font color='red'>手機(jī)</font> 老年<font color='red'>手機(jī)</font> 直板<font color='red'>手機(jī)</font> 紅色]}}總結(jié)
以上是生活随笔為你收集整理的SpringBoot+solr配置入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 持续交付流水线
- 下一篇: SpringCloud-Gateway网