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
注:本文檔對應(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ū)動包,倉庫地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>使用SpringBoot對應(yīng)的版本即可</version> </dependency>
1.2 安裝
1、安裝 解壓solr-8.11.2.tgz后的目錄:
023/05/09 13:57 <DIR> bin [Solr的啟動停止命令] 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
將下面的四個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、啟動 打開cmd命令窗口,進(jìn)入到【solr解壓目錄下\bin】目錄,執(zhí)行啟動命令:
solr start
3、創(chuàng)建core 打開cmd命令窗口,進(jìn)入到【.\bin】目錄,執(zhí)行啟動命令:
solr create_core -c idaas_core(自定義core名稱) -d sample_techproducts_configs
創(chuàng)建成功后,新建core對應(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索引存儲規(guī)則。
- 配置copyField聯(lián)合查詢。
二、SpringBoot整合Solr
2.1、項(xiàng)目配置
SpringBoot項(xiàng)目添加依賴
<dependency> <!-- Spring官方已停止對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://xxx
2.2、使用SolrClient維護(hù)索引增刪改查
- 1、添加索引
- 2、查詢索引
- 3、更新索引
- 4、刪除索引
源碼案例見本倉庫中SolrClientServiceImpl.java。
到此這篇關(guān)于SpringBoot整合Solr實(shí)現(xiàn)文檔檢索的文章就介紹到這了,更多相關(guān)SpringBoot Solr文檔檢索內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java文件重命名(文件批量重命名)實(shí)例程序代碼分享
這篇文章主要介紹了java文件重命名的程序代碼,大家參考使用吧2013-12-12java HashMap,TreeMap與LinkedHashMap的詳解
這篇文章主要介紹了 java HashMap,TreeMap與LinkedHashMap的詳解的相關(guān)資料,這里提供實(shí)例代碼,幫助大家學(xué)習(xí)理解 這部分的內(nèi)容,需要的朋友可以參考下2016-11-11解決SSLContext.getInstance()中參數(shù)設(shè)置TLS版本無效的問題
這篇文章主要介紹了解決SSLContext.getInstance()中參數(shù)設(shè)置TLS版本無效的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔
在多人協(xié)作的開發(fā)過程中,API文檔不僅可以減少等待,也能保證開發(fā)的持續(xù)進(jìn)行,這篇文章主要給大家介紹了關(guān)于SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔的相關(guān)資料,需要的朋友可以參考下2021-07-07Spring使用@Autowired為抽象父類注入依賴代碼實(shí)例
這篇文章主要介紹了Spring使用@Autowired為抽象父類注入依賴代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-11-11Spring AOP在web應(yīng)用中的使用方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Spring AOP在web應(yīng)用中的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Spring AOP具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12