Skip to content
Mark Paluch edited this page Jan 30, 2023 · 18 revisions

The following tables provide a quick overview over the features available in the various Spring Data modules. The symbols are used as follows

  • ⭕- not (yet) available
  • ✅ - available
  • ❕ - doesn't make sense in the context of this module

Official modules

Commons JPA MongoDB Gemfire Redis Cassandra
Mapping subsystem ✅ ✅ ✅ ✅1 ✅ ✅
Template API ❕ ✅ ✅ ✅ ✅ ✅
Spring XML namespace ✅ ✅ ✅ ✅ ✅ ✅
Auditing ✅ ✅ ✅ ⭕ ❕ ✅
Repositories
General support ✅ ✅ ✅ ✅ ✅ ✅
CRUD implementation ✅ ✅ ✅ ✅ ✅ ✅
Declarative query methods ❕ ✅ ✅ ✅ ✅ ✅
Pagination support ⭕ ✅ ✅ ❕ ❕ ✅
JavaConfig support ✅ ✅ ✅ ✅ ✅ ✅
CDI integration ✅ ✅ ✅ ⭕ ✅ ✅

1 - Basic mapping only (id mapping).

Community lead modules

Elasticsearch Couchbase Neo4j SD FuzzyDB
Mapping subsystem ✅ ✅ ✅ ✅
Template API ✅ ✅ ✅ ✅
Spring XML namespace ✅ ⭕ ⭕ ✅
Auditing ✅ ✅ ✅ ⭕
Repositories
General support ✅ ✅ ✅ ⭕
CRUD implementation ✅ ✅ ✅ ⭕
Declarative query methods ✅ ✅ ✅ ⭕
Pagination support ✅ ✅ ✅ ⭕
JavaConfig support ✅ ✅ ✅ ✅
CDI integration ✅ ✅ ✅ ⭕

Terms

  • Mapping subsystem – mapping metadata (MappingContext, PersistentEntity, PersistentProperty) and store-to-object conversion implementation (EntityConverter).
  • Template API – A â€ĶTemplate implementation to allow low-level persistence operations taking care of resource management, exception translation and object mapping.
  • Spring XML namespace – Spring XML namespace support for configuring infrastructure and repositories.
  • Auditing – support for auditing backing the @Enableâ€ĶAuditing annotation, i.e. support for @CreatedBy, @LastModifeidBy, @CreatedDate, @LastModifiedDate annotations on aggregate roots.
  • CRUD implementation – implementation of CrudRepository.
  • Declarative query methods – support for declaring query methods in repository interfaces either backed by a manually declared query (through @Query) or by query derivation.
  • Pagination support – implementation of PagingAndSortingRepository as well as support of Pageable in query methods.
  • JavaConfig – Implementation of configuration integration backing the @Enableâ€ĶRepository annotation.
  • CDI integration – CDI extension implementation.

Clone this wiki locally