Feature matrix - spring-projects/spring-data-commons GitHub Wiki

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.
⚠️ **GitHub.com Fallback** ⚠️