spring - 如何使用 Spring Data ElasticSearchTemplate 保存对象

标签 spring elasticsearch spring-data spring-data-elasticsearch

如何使用 Spring Data ElasticSearchTemplate 保存实体?在文档中找不到它。

最佳答案

我相信 index()method for saving an entity in Elasticsearch使用模板。

看看this sample application使用 .index() 准备 JUnit 测试:

public void before() {
        elasticsearchTemplate.deleteIndex(Article.class);
        elasticsearchTemplate.createIndex(Article.class);
        elasticsearchTemplate.putMapping(Article.class);
        elasticsearchTemplate.refresh(Article.class, true);

        IndexQuery article1 = new ArticleBuilder("1").title("article four").addAuthor(RIZWAN_IDREES).addAuthor(ARTUR_KONCZAK).addAuthor(MOHSIN_HUSEN).addAuthor(JONATHAN_YAN).score(10).buildIndex();
        IndexQuery article2 = new ArticleBuilder("2").title("article three").addAuthor(RIZWAN_IDREES).addAuthor(ARTUR_KONCZAK).addAuthor(MOHSIN_HUSEN).addPublishedYear(YEAR_2000).score(20).buildIndex();
        IndexQuery article3 = new ArticleBuilder("3").title("article two").addAuthor(RIZWAN_IDREES).addAuthor(ARTUR_KONCZAK).addPublishedYear(YEAR_2001).addPublishedYear(YEAR_2000).score(30).buildIndex();
        IndexQuery article4 = new ArticleBuilder("4").title("article one").addAuthor(RIZWAN_IDREES).addPublishedYear(YEAR_2002).addPublishedYear(YEAR_2001).addPublishedYear(YEAR_2000).score(40).buildIndex();

        elasticsearchTemplate.index(article1);
        elasticsearchTemplate.index(article2);
        elasticsearchTemplate.index(article3);
        elasticsearchTemplate.index(article4);
        elasticsearchTemplate.refresh(Article.class, true);
    }

您也可以使用 bulkIndex for multiple indexes利用Elasticsearch's bulk index feature .

关于spring - 如何使用 Spring Data ElasticSearchTemplate 保存对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24401208/

相关文章:

java - 如何使用 spring 在运行时创建请求范围的 bean

database - 使用Elasticsearch聚合查找桶的并集或相交

c# - 使用 NEST 渗透

java - JPA LazyInitializationException - 无法初始化代理

spring - camel - 如何使用 java 配置拥有多个上下文

java - 如何在spring boot中使用应用程序上下文获取bean

java - Spring Data REST 使用 QueryDSL 绑定(bind)进行范围检查

spring - 在 SPRING BOOT 中配置多个数据库

spring - Java EE 与独立

elasticsearch - 如何更改这些映射以使其具有嵌套字段?