Need advice about which tool to choose?Ask the StackShare community!
Spring Data vs Slick: What are the differences?
What is Spring Data? Provides a consistent approach to data access – relational, non-relational, map-reduce, and beyond. It makes it easy to use data access technologies, relational and non-relational databases, map-reduce frameworks, and cloud-based data services. This is an umbrella project which contains many subprojects that are specific to a given database.
What is Slick? Database query and access library for Scala. It is a modern database query and access library for Scala. It allows you to work with stored data almost as if you were using Scala collections while at the same time giving you full control over when a database access happens and which data is transferred.
Spring Data and Slick can be categorized as "Database" tools.
Some of the features offered by Spring Data are:
- Powerful repository
- Custom object-mapping abstractions
- Dynamic query derivation
On the other hand, Slick provides the following key features:
- Seamless data access for your Scala application
- Write Scala code to query your database
- All database entities and queries are statically checked at compile-time
Spring Data and Slick are both open source tools. Slick with 2.27K GitHub stars and 542 forks on GitHub appears to be more popular than Spring Data with 58 GitHub stars and 62 GitHub forks.
orat.io, Massdrop, and SpringRole are some of the popular companies that use Slick, whereas Spring Data is used by Monkey Exchange, Hocelot, and apside. Slick has a broader approval, being mentioned in 7789 company stacks & 4 developers stacks; compared to Spring Data, which is listed in 15 company stacks and 42 developer stacks.