Spring Data Elasticsearch

Spring Data for Elasticsearch is part of the umbrella Spring Data project which aims to provide a familiar and consistent Spring-based programming model for for new datastores while retaining store-specific features and capabilities.

Quick Start
Fork me on GitHub


The Spring Data Elasticsearch project provides integration with the Elasticsearch search engine. Key functional areas of Spring Data Elasticsearch are a POJO centric model for interacting with a Elastichsearch Documents and easily writing a Repository style data access layer.


  • Spring configuration support using Java based @Configuration classes or an XML namespace for a ES clients instances.
  • ElasticsearchTemplate helper class that increases productivity performing common ES operations. Includes integrated object mapping between documents and POJOs.
  • Feature Rich Object Mapping integrated with Spring’s Conversion Service
  • Annotation based mapping metadata but extensible to support other metadata formats
  • Automatic implementation of Repository interfaces including support for custom finder methods.
  • CDI support for repositories

Quick Start


The recommended way to get started using spring-data-elasticsearch in your project is with a dependency management system – the snippet below can be copied and pasted into your build. Need help? See our getting started guides on building with Maven and Gradle.

Sample Projects

  • Soon

Getting Started Guides

  • Soon