Data access or persistence is a major technical feature of data-driven applications. This is a critical area where careful design and expertise is required. Modern enterprise systems use a wide variety of data storage mechanisms ranging from traditional relational databases such as Oracle, SQL Server, and Sybase to more flexible, schema-less NoSQL databases such as MongoDB, Cassandra, and Couchbase. Spring Framework provides comprehensive support for data persistence in multiple flavors of mechanism, ranging from convenient template components to smart abstractions over popular ORM (Object Relational Mapping) tools and libraries, making them much easier to use. Spring's data access support is another great reason for choosing it for developing Java applications.
Spring Framework offers the following primary approaches for data persistence mechanisms for developers to choose from:
Spring JDBC
ORM Data Access
Spring Data