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

Java利用ElasticSearch實現(xiàn)增刪改功能

 更新時間:2023年08月09日 10:31:00   作者:Awbeci  
這篇文章主要為大家詳細介紹了Java如何利用ElasticSearch實現(xiàn)增刪改功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

前言

最近在學(xué)習(xí)elasticsearch,所以從最簡單的增刪改功能開始,下面是我的版本依賴,我使用的是java17elasticsearch-java8.7spring-boot3.0

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
<dependency>
    <groupId>co.elastic.clients</groupId>
    <artifactId>elasticsearch-java</artifactId>
    <version>8.7.1</version>
</dependency>

靜態(tài)index操作

我使用的是ElasticsearchOperations來實現(xiàn),先看看基礎(chǔ)類定義:

@Data
@Document(indexName = "index_urls", createIndex = true)
public class UrlIndex {
    private String id;
    private String uid;
    private String title;
    // 下拉提示建議使用的字段,注意:Completion類型字段,不能做篩選用
//    @CompletionField(analyzer="ik_smart",searchAnalyzer="ik_smart", maxInputLength = 100)
    private Completion suggest;
    private String url;
    private String domain;
    private String description;
    private String favicon;
    private Date createdDt;//創(chuàng)建時間
    private Date updatedDt;//更新時間
}

定義好之后,我們來實現(xiàn)增刪改功能:

新增:

UrlIndex url = JSONObject.parseObject(msg, UrlIndex.class);
UrlIndex urlIndex = elasticsearchOperations.save(url);

編輯:

Url url = JSONObject.parseObject(msg, Url.class);
UrlIndex urlIndex = elasticsearchOperations.get(url.getId(), UrlIndex.class);
if (urlIndex != null) {
    urlIndex.setTitle(url.getTitle());
    // 存在即更新,,注意要設(shè)置index
    elasticsearchOperations.save(urlIndex);
}

刪除:

elasticsearchOperations.delete(id, UrlIndex.class);

動態(tài)index操作

如果我們不想在實體類上添加@Document來指定index,我們?nèi)绾螌崿F(xiàn)呢?

@Document(indexName = "index_urls", createIndex = true)

新增:

UrlIndex url = JSONObject.parseObject(msg, UrlIndex.class);
IndexCoordinates indexCoordinates = IndexCoordinates.of("index_name");
UrlIndex urlIndex = elasticsearchOperations.save(url, indexCoordinates);

編輯:

IndexCoordinates indexCoordinates = IndexCoordinates.of("index_name");
UrlIndex resUrl = JSONObject.parseObject(msg, UrlIndex.class);
// 通過get查詢出es數(shù)據(jù),注意要設(shè)置index
UrlIndex urlIndex = elasticsearchOperations.get(resUrl.getId(), UrlIndex.class, indexCoordinates);
if (urlIndex != null) {
    urlIndex.setTitle(resUrl.getTitle());
    urlIndex.setSuggest(resUrl.getSuggest());
    // 存在即更新,,注意要設(shè)置index
    elasticsearchOperations.save(urlIndex, indexCoordinates);
}

刪除:

IndexCoordinates indexCoordinates = IndexCoordinates.of("index_name");
elasticsearchOperations.delete(msg, indexCoordinates);

總結(jié)

1、在實體類上通過設(shè)置@Document(indexName = "index_urls", createIndex = true)就可以實現(xiàn)索引就可以完成增刪改功能

2、但是如果你使用動態(tài)索引,則要指定你的索引名

3、我使用的是ElasticsearchOperations當然還有其它的實現(xiàn)方式,如EnableElasticsearchRepositories

以上就是Java利用ElasticSearch實現(xiàn)增刪改功能的詳細內(nèi)容,更多關(guān)于Java ElasticSearch的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • idea maven 構(gòu)建本地jar包及pom文件的過程

    idea maven 構(gòu)建本地jar包及pom文件的過程

    這篇文章主要介紹了idea maven 構(gòu)建本地jar包及pom文件的過程,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • 移動開發(fā)Spring Boot外置tomcat教程及解決方法

    移動開發(fā)Spring Boot外置tomcat教程及解決方法

    這篇文章主要介紹了移動開發(fā)SpringBoot外置tomcat教程,需要的朋友可以參考下
    2017-11-11
  • Java?BigDecimal與RoundingMode最常用的用法總結(jié)

    Java?BigDecimal與RoundingMode最常用的用法總結(jié)

    RoundingMode是Java中定義舍入行為的枚舉類,包括UP、DOWN、CEILING等8種模式,適用于精確數(shù)字運算,這篇文章主要介紹了Java?BigDecimal與RoundingMode最常用用法總結(jié)的相關(guān)資料,需要的朋友可以參考下
    2025-12-12
  • Linux(centos7)安裝jdk1.8的詳細步驟

    Linux(centos7)安裝jdk1.8的詳細步驟

    Linux的使用相信大家都要用到j(luò)ava吧,在使用java前我們得先安裝jdk以及配置環(huán)境變量等工作,下面這篇文章主要給大家介紹了關(guān)于Linux(centos7)安裝jdk1.8的詳細步驟,需要的朋友可以參考下
    2023-10-10
  • Comet框架Plushlet使用問題解決方案

    Comet框架Plushlet使用問題解決方案

    這篇文章主要介紹了Comet框架Plushlet使用問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • Gradle的基本使用

    Gradle的基本使用

    這篇文章主要介紹了Gradle的基本使用方法,幫助大家更好的理解和學(xué)習(xí)Gradle的相關(guān)知識,感興趣的朋友可以了解下
    2021-03-03
  • Eclipse使用maven搭建spring mvc圖文教程

    Eclipse使用maven搭建spring mvc圖文教程

    這篇文章主要為大家分享了Eclipse使用maven搭建spring mvc圖文教程,感興趣的小伙伴們可以參考一下
    2016-05-05
  • Spring實現(xiàn)Quartz自動配置的方法詳解

    Spring實現(xiàn)Quartz自動配置的方法詳解

    這篇文章主要介紹了Spring實現(xiàn)Quartz自動配置的方法詳解,如果想在應(yīng)用中使用Quartz任務(wù)調(diào)度功能,可以通過Spring Boot實現(xiàn)Quartz的自動配置,以下介紹如何開啟Quartz自動配置,以及Quartz自動配置的實現(xiàn)過程,需要的朋友可以參考下
    2023-11-11
  • Java實現(xiàn)快速冪算法詳解

    Java實現(xiàn)快速冪算法詳解

    快速冪是用來解決求冪運算的高效方式。此算法偶爾會出現(xiàn)在筆試以及面試中,特意花時間研究了下這題,感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下
    2022-10-10
  • Java Iterator接口遍歷單列集合迭代器原理詳解

    Java Iterator接口遍歷單列集合迭代器原理詳解

    這篇文章主要介紹了Java Iterator接口遍歷單列集合迭代器原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12

最新評論

沁水县| 榆社县| 乌兰浩特市| 阜阳市| 鸡东县| 壶关县| 玛多县| 巴南区| 易门县| 锡林浩特市| 芦溪县| 合水县| 偏关县| 新宁县| 中卫市| 乡宁县| 湖北省| 马尔康县| 卢氏县| 区。| 沧州市| 兖州市| 石景山区| 宁波市| 建始县| 崇左市| 广安市| 普安县| 安乡县| 临清市| 通渭县| 浙江省| 福鼎市| 淮安市| 三原县| 乳山市| 如东县| 六安市| 景德镇市| 新化县| 丰镇市|