最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot 數(shù)據(jù)存儲(chǔ)實(shí)戰(zhàn)指南

 更新時(shí)間:2026年03月24日 09:48:00   作者:程序員西西  
Elasticsearch是一個(gè)基于Apache Lucene開發(fā)的的搜索服務(wù),提供了一個(gè)分布式多用戶能力的全文搜索引擎,本文介紹如何在SpringBoot項(xiàng)目中整合ElasticSearch來(lái)完成數(shù)據(jù)的存儲(chǔ),感興趣的朋友跟隨小編一起看看吧

Elasticsearch是一個(gè)基于Apache Lucene開發(fā)的的搜索服務(wù),提供了一個(gè)分布式多用戶能力的全文搜索引擎,并基于RESTful web接口。支持結(jié)構(gòu)化搜索、數(shù)據(jù)分析、復(fù)雜的語(yǔ)言處理、地理位置和對(duì)象間關(guān)聯(lián)關(guān)系等功能。那么如何在SpringBoot項(xiàng)目中整合ElasticSearch來(lái)完成數(shù)據(jù)的存儲(chǔ)呢?下面我們就來(lái)看看。

這里需要特別說(shuō)明在高版本的ElasticSearch對(duì)于數(shù)據(jù)的處理方式與低版本的處理方式是不同的,并且,在Spring Boot中所支持的ElasticSearch客戶端版本也是有所差異的。這里演示的是基于 Spring Boot 2.1.4.RELEASE 版本和ElasticSearch 6.8.0的版本處理方式。

依賴和配置

添加Elasticsearch的依賴到pom.xml文件中。

<parent>
    <artifactId>spring-boot-parent</artifactId>
    <groupId>org.springframework.boot</groupId>
    <version>2.1.4.RELEASE</version>
</parent>
```js
```
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>

在配置文件文件中配置ElasticSearch的連接

spring.data.elasticsearch.cluster-name=my-cluster
spring.data.elasticsearch.cluster-nodes=192.168.1.202:9300

這里需要注意,在高版本的SpringBoot配置中已經(jīng)不支持這樣的配置操作,需要注意的實(shí),在這個(gè)配置中如果是通過(guò)ELK調(diào)用則添加的端口是9200,如果是通過(guò)Java程序調(diào)用則配置的連接端口是9300。

具體實(shí)現(xiàn)

@Document(indexName = "my_index", type = "my_type")
public class MyDocument {
    @Id
    private String id;
    private String name;
    private String description;
    // 省略構(gòu)造函數(shù)、getter和setter
}

繼承ElasticsearchRepository接口實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層代碼

public interface MyDocumentRepository 
extends ElasticsearchRepository<MyDocument, String> {
}

編寫服務(wù)層代碼

@Service
public class MyDocumentService {
    @Autowired
    private MyDocumentRepository repository;
    public MyDocument save(MyDocument document) {
        return repository.save(document);
    }
    public Iterable<MyDocument> findAll() {
        Iterable<MyDocument> all = repository.findAll();
        return all;
    }
    public MyDocument findById(String id) {
        return repository.findById(id).orElse(null);
    }
    public void deleteById(String id) {
        repository.deleteById(id);
    }
}

編寫Controller類進(jìn)行測(cè)試

@RestController
@RequestMapping("/documents")
public class MyDocumentController {
    @Autowired
    private MyDocumentService service;
    @PostMapping
    public MyDocument create(@RequestBody MyDocument document) {
        return service.save(document);
    }
    @GetMapping
    public Iterable<MyDocument> getAll() {
        Iterable<MyDocument> iterable = service.findAll();
        return iterable;
    }
    @GetMapping("/{id}")
    public MyDocument getById(@PathVariable String id) {
        return service.findById(id);
    }
    @DeleteMapping("/{id}")
    public void deleteById(@PathVariable String id) {
        service.deleteById(id);
    }
}

以上代碼示例演示了如何使用Spring Boot整合Elasticsearch實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)。

調(diào)用接口進(jìn)行測(cè)試

獲取列表

總結(jié)

在上面的例子中,通過(guò)SpringBoot 2.1.4與ElasticSearch6.8.0完成了整合,如果想要適配更高版本的ElasticSearch或者是Spring Boot ,在過(guò)程中一定注意對(duì)于版本兼容性的選擇。

到此這篇關(guān)于SpringBoot 數(shù)據(jù)存儲(chǔ)實(shí)戰(zhàn)指南的文章就介紹到這了,更多相關(guān)SpringBoot 數(shù)據(jù)存儲(chǔ)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java泛型類、重構(gòu)的使用及說(shuō)明

    Java泛型類、重構(gòu)的使用及說(shuō)明

    文章介紹了泛型類和重構(gòu)的概念、原理和應(yīng)用,泛型類是一種參數(shù)化類型,可以操作不同數(shù)據(jù)類型,而重構(gòu)是通過(guò)對(duì)已有代碼進(jìn)行修改,改善其設(shè)計(jì)、結(jié)構(gòu)和可讀性的過(guò)程,重構(gòu)可以幫助提高代碼質(zhì)量、簡(jiǎn)化理解與調(diào)試、優(yōu)化性能、改進(jìn)設(shè)計(jì)、提高團(tuán)隊(duì)協(xié)作并擴(kuò)展功能
    2025-11-11
  • Spring自定義參數(shù)解析器代碼實(shí)例

    Spring自定義參數(shù)解析器代碼實(shí)例

    這篇文章主要介紹了Spring自定義參數(shù)解析器代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • SpringBoot注冊(cè)第三方Bean的方法總結(jié)

    SpringBoot注冊(cè)第三方Bean的方法總結(jié)

    眾所周知,SpringBoot默認(rèn)會(huì)掃描啟動(dòng)類所在的包及其子包,一般我們都是在需要的類上通過(guò)注解的方式去將Bean注冊(cè)交給IOC進(jìn)行管理,但是注冊(cè)第三方Bean的方案卻不支持,所以本文給大家介紹了SpringBoot注冊(cè)第三方Bean的方法,需要的朋友可以參考下
    2024-01-01
  • 使用@value注解取不到application.xml配置文件中的值問(wèn)題

    使用@value注解取不到application.xml配置文件中的值問(wèn)題

    這篇文章主要介紹了使用@value注解取不到application.xml配置文件中的值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • SpringBoot集成Docling文檔解析服務(wù)的完全指南

    SpringBoot集成Docling文檔解析服務(wù)的完全指南

    本文從入門到精通,詳細(xì)介紹如何在 SpringBoot項(xiàng)目中集成Docling文檔解析服務(wù),包含環(huán)境搭建、配置詳解、661行核心代碼逐行解析、請(qǐng)求參數(shù)詳解、返回?cái)?shù)據(jù)處理、向量存儲(chǔ)集成、生產(chǎn)級(jí)優(yōu)化方案和完整測(cè)試用例,看完本文即可獨(dú)立實(shí)現(xiàn)企業(yè)級(jí)文檔解析功能
    2026-05-05
  • Java for循環(huán)Map集合優(yōu)化實(shí)現(xiàn)解析

    Java for循環(huán)Map集合優(yōu)化實(shí)現(xiàn)解析

    這篇文章主要介紹了Java for循環(huán)Map集合優(yōu)化實(shí)現(xiàn)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • IDEA性能優(yōu)化方法解決卡頓問(wèn)題

    IDEA性能優(yōu)化方法解決卡頓問(wèn)題

    本文主要介紹了如何在不升級(jí)電腦配置的情況下通過(guò)修改IntelliJIDEA的設(shè)置來(lái)優(yōu)化其性能,從而提升開發(fā)效率
    2024-12-12
  • Java Lambda表達(dá)式與引用類淺析

    Java Lambda表達(dá)式與引用類淺析

    Lambda表達(dá)式是Java SE8中一個(gè)重要的新特性,允許通過(guò)表達(dá)式來(lái)代替功能接口。本文將通過(guò)一些簡(jiǎn)單的示例和大家講講Lamda表達(dá)式的使用,感興趣的可以了解一下
    2023-01-01
  • Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法

    Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法

    在java中經(jīng)常會(huì)遇到需要對(duì)數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換的場(chǎng)景,這篇文章主要給大家介紹了關(guān)于Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-07-07
  • SpringBoot整合Spring?Boot?Admin實(shí)現(xiàn)服務(wù)監(jiān)控的方法

    SpringBoot整合Spring?Boot?Admin實(shí)現(xiàn)服務(wù)監(jiān)控的方法

    這篇文章主要介紹了SpringBoot整合Spring?Boot?Admin實(shí)現(xiàn)服務(wù)監(jiān)控,內(nèi)容包括Server端服務(wù)開發(fā),Client端服務(wù)開發(fā)其中Spring Boot Admin還可以對(duì)其監(jiān)控的服務(wù)提供告警功能,如服務(wù)宕機(jī)時(shí),可以及時(shí)以郵件方式通知運(yùn)維人員,感興趣的朋友跟隨小編一起看看吧
    2022-03-03

最新評(píng)論

漾濞| 清远市| 金川县| 星子县| 张家港市| 张北县| 斗六市| 叙永县| 武功县| 独山县| 巨鹿县| 台中县| 垫江县| 延边| 礼泉县| 商南县| 黄石市| 会东县| 大港区| 龙岩市| 民乐县| 朝阳市| 拜泉县| 将乐县| 湖南省| 河东区| 广南县| 宝兴县| 苍溪县| 陆川县| 娄底市| 台山市| 武平县| 琼结县| 洪雅县| 巴彦县| 任丘市| 苍溪县| 景谷| 文登市| 巴林左旗|