There are multiple sources of data in today's world—SQL (relational) and a variety of NoSQL databases. Spring Data tries to provide a consistent data-access approach to all of these different kinds of databases.
Spring Data provides integration with a varied range of specifications and/or data stores:
- JPA
- MongoDB
- Redis
- Solr
- Gemfire
- Apache Cassandra
- Neo4J for Graph Search
Some of the important features are listed as follows:
- Provides abstractions around repository and object mappings—by determining queries from method names
- Simple Spring integration
- Integration with Spring MVC controllers
- Advanced automatic auditing features, created by, created date, last changed by, and last changed date
We will discuss Spring Data in more detail in Chapter 8, Securing REST API with Spring Security.