Spring data (http://projects.spring.io/spring-data) is a module that abstracts data access operations for many different data access technologies and databases. It provides a consistent API to work seamlessly with different underlying implementations. This frees us from worrying about the underlying database and data access technology. It has powerful features such as dynamic query generation from method names, custom object mapping abstractions, and so on. Spring data supports working with JPA, MongoDB, Redis, and Elasticsearch to name a few. It also lets you export Spring data repositories as RESTful resources.