SpringBoot整合Solr實現(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練習Demo項目 - Gitee.com
版本兼容:
solr-9.x --> JDK11 solr-6.x以上 --> JDK8
注:本文檔對應的版本是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對應的版本即可</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自身源碼的構建結果] 2023/05/09 11:02 <DIR> docs [文檔連接] 2023/05/09 11:02 <DIR> example [案例] 2023/05/09 11:02 <DIR> licenses [三方授權文檔] 2023/05/09 11:03 <DIR> server [重點重點重點!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命令窗口,進入到【solr解壓目錄下\bin】目錄,執(zhí)行啟動命令:
solr start
3、創(chuàng)建core 打開cmd命令窗口,進入到【.\bin】目錄,執(zhí)行啟動命令:
solr create_core -c idaas_core(自定義core名稱) -d sample_techproducts_configs
創(chuàng)建成功后,新建core對應的目錄在.\server\solr\idaas_core下,其中conf子目錄下:
- solrconfig.xml : 配置查詢、更新、數(shù)據(jù)導入等requestHandler。
- managed-schema : 配置中文分詞器ik-analyzer、field字段索引規(guī)則等,主要工作就是配置該文件
4、配置core
- 配置fieldType,使用ik-analyzer中文分詞器 配置field索引存儲規(guī)則。
- 配置copyField聯(lián)合查詢。
二、SpringBoot整合Solr
2.1、項目配置
SpringBoot項目添加依賴
<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服務器信息
spring: data: solr: # spring data框架定義的訪問地址,不能提供索引庫定義,是直接連接數(shù)據(jù)源的,可以根據(jù)索引庫命名訪問任意索引庫,實現(xiàn)數(shù)據(jù)訪問的。 host: http://localhost:8983/solr # solr集群 # zk-host: http://xxx,http://xxx
2.2、使用SolrClient維護索引增刪改查
- 1、添加索引
- 2、查詢索引
- 3、更新索引
- 4、刪除索引
源碼案例見本倉庫中SolrClientServiceImpl.java。
到此這篇關于SpringBoot整合Solr實現(xiàn)文檔檢索的文章就介紹到這了,更多相關SpringBoot Solr文檔檢索內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
java HashMap,TreeMap與LinkedHashMap的詳解
這篇文章主要介紹了 java HashMap,TreeMap與LinkedHashMap的詳解的相關資料,這里提供實例代碼,幫助大家學習理解 這部分的內(nèi)容,需要的朋友可以參考下2016-11-11解決SSLContext.getInstance()中參數(shù)設置TLS版本無效的問題
這篇文章主要介紹了解決SSLContext.getInstance()中參數(shù)設置TLS版本無效的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔
在多人協(xié)作的開發(fā)過程中,API文檔不僅可以減少等待,也能保證開發(fā)的持續(xù)進行,這篇文章主要給大家介紹了關于SpringBoot如何優(yōu)雅的整合Swagger Api自動生成文檔的相關資料,需要的朋友可以參考下2021-07-07Spring使用@Autowired為抽象父類注入依賴代碼實例
這篇文章主要介紹了Spring使用@Autowired為抽象父類注入依賴代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11