SpringBoot整合Solr實(shí)現(xiàn)文檔檢索
一、安裝solr
1.1 下載
官方下載地址: https://solr.apache.org/downloads.html
歷史版本下載地址:https://archive.apache.org/dist/lucene/solr/
solr文檔:https://solr.apache.org/guide/solr/latest/index.html
Demo案例源碼倉庫:java-test: java練習(xí)Demo項(xiàng)目 - Gitee.com
版本兼容:
solr-9.x --> JDK11 solr-6.x以上 --> JDK8
注:本文檔對(duì)應(yīng)的版本是solr-8.11.2
下載中文分詞器ik-analyzer,倉庫地址:Gitee 極速下載/ik-analyzer-solr
<!-- Maven倉庫地址 -->
<dependency>
<groupId>com.github.magese</groupId>
<artifactId>ik-analyzer</artifactId>
<version>8.5.0</version>
</dependency>下載MySQL數(shù)據(jù)庫驅(qū)動(dòng)包,倉庫地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>使用SpringBoot對(duì)應(yīng)的版本即可</version>
</dependency>1.2 安裝
1、安裝 解壓solr-8.11.2.tgz后的目錄:
023/05/09 13:57 <DIR> bin [Solr的啟動(dòng)停止命令] 2023/05/09 11:02 <DIR> contrib [Solr依賴的三方包] 2023/05/09 11:02 <DIR> dist [Solr自身源碼的構(gòu)建結(jié)果] 2023/05/09 11:02 <DIR> docs [文檔連接] 2023/05/09 11:02 <DIR> example [案例] 2023/05/09 11:02 <DIR> licenses [三方授權(quán)文檔] 2023/05/09 11:03 <DIR> server [重點(diǎn)重點(diǎn)重點(diǎn)!jetty及solrCore的目錄] 2022/06/13 23:41 980,599 CHANGES.txt 2022/05/13 05:51 13,078 LICENSE.txt 2022/06/01 00:43 783,467 LUCENE_CHANGES.txt 2022/05/13 05:51 30,011 NOTICE.txt 2022/05/13 05:51 7,490 README.txt
將下面的四個(gè)jar包,拷貝到.\server\solr-webapp\webapp\WEB-INF\lib目錄下。
- .\dist\solr-dataimporthandler-8.11.2.jar
- .\dist\solr-dataimporthandler-extras-8.11.2.jar
- 前面下載的ik-analyzer-solr包
- 前面下載的mysql-connector-java包
2、啟動(dòng) 打開cmd命令窗口,進(jìn)入到【solr解壓目錄下\bin】目錄,執(zhí)行啟動(dòng)命令:
solr start
3、創(chuàng)建core 打開cmd命令窗口,進(jìn)入到【.\bin】目錄,執(zhí)行啟動(dòng)命令:
solr create_core -c idaas_core(自定義core名稱) -d sample_techproducts_configs
創(chuàng)建成功后,新建core對(duì)應(yīng)的目錄在.\server\solr\idaas_core下,其中conf子目錄下:
- solrconfig.xml : 配置查詢、更新、數(shù)據(jù)導(dǎo)入等requestHandler。
- managed-schema : 配置中文分詞器ik-analyzer、field字段索引規(guī)則等,主要工作就是配置該文件
4、配置core
- 配置fieldType,使用ik-analyzer中文分詞器 配置field索引存儲(chǔ)規(guī)則。
- 配置copyField聯(lián)合查詢。
二、SpringBoot整合Solr
2.1、項(xiàng)目配置
SpringBoot項(xiàng)目添加依賴
<dependency>
<!-- Spring官方已停止對(duì)solr的支持 https://spring.io/projects/spring-data-solr -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-solr</artifactId>
<version>2.4.9</version>
</dependency>在application.yml中配置Solr服務(wù)器信息
spring:
data:
solr:
# spring data框架定義的訪問地址,不能提供索引庫定義,是直接連接數(shù)據(jù)源的,可以根據(jù)索引庫命名訪問任意索引庫,實(shí)現(xiàn)數(shù)據(jù)訪問的。
host: http://localhost:8983/solr
# solr集群
# zk-host: http://xxx,http://xxx2.2、使用SolrClient維護(hù)索引增刪改查
- 1、添加索引
- 2、查詢索引
- 3、更新索引
- 4、刪除索引
源碼案例見本倉庫中SolrClientServiceImpl.java。
到此這篇關(guān)于SpringBoot整合Solr實(shí)現(xiàn)文檔檢索的文章就介紹到這了,更多相關(guān)SpringBoot Solr文檔檢索內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot集成Tess4J實(shí)現(xiàn)OCR的示例代碼
Tess4J是一個(gè)基于Tesseract OCR引擎的Java接口,可以用來識(shí)別圖像中的文本,說白了,就是封裝了它的API,讓Java可以直接調(diào)用,本文給大家介紹了SpringBoot集成Tess4J實(shí)現(xiàn)OCR的示例,需要的朋友可以參考下2024-12-12
Java 使用JdbcTemplate 中的queryForList發(fā)生錯(cuò)誤解決辦法
這篇文章主要介紹了Java 使用JdbcTemplate 中的queryForList發(fā)生錯(cuò)誤解決辦法的相關(guān)資料,需要的朋友可以參考下2017-07-07
SpringBoot實(shí)現(xiàn)文件下載的限速功能
在SpringBoot項(xiàng)目中,實(shí)現(xiàn)文件下載的限速功能可以有效控制服務(wù)器帶寬的占用,并防止單個(gè)用戶消耗過多的資源,本文將通過具體的代碼示例和詳細(xì)的流程解釋,介紹如何在SpringBoot項(xiàng)目中實(shí)現(xiàn)文件下載的限速功能,需要的朋友可以參考下2024-07-07
一篇文章帶你了解Java Spring基礎(chǔ)與IOC
這篇文章主要介紹了Java Spring基礎(chǔ)與IOC,文中講解的相關(guān)內(nèi)容非常詳細(xì),也運(yùn)用了大量的代碼進(jìn)行講解,感興趣的小伙伴可以參考一下2021-08-08
SpringBoot項(xiàng)目如何添加2FA雙因素身份認(rèn)證
雙因素身份驗(yàn)證2FA是一種安全系統(tǒng),要求用戶提供兩種不同的身份驗(yàn)證方式才能訪問某個(gè)系統(tǒng)或服務(wù),國(guó)內(nèi)普遍做短信驗(yàn)證碼這種的用的比較少,不過在國(guó)外的網(wǎng)站中使用雙因素身份驗(yàn)證的還是很多的,這篇文章主要介紹了SpringBoot項(xiàng)目如何添加2FA雙因素身份認(rèn)證,需要的朋友參考下2024-04-04
springmvc利用jquery.form插件異步上傳文件示例
本篇文章主要介紹了springmvc利用jquery.form插件異步上傳文件示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-01-01

