30.7 Cassandra
Cassandra is an open source, distributed database management system designed to handle large amounts of data across many commodity servers. Spring Boot offers auto-configuration for Cassandra and abstractions on top of it provided by Spring Data Cassandra. There is a spring-boot-starter-data-cassandra
‘Starter’ for collecting the dependencies in a convenient way.
30.7.1 Connecting to Cassandra
You can inject an auto-configured CassandraTemplate
or a Cassandra Session
instance as you would with any other Spring Bean. The spring.data.cassandra.*
properties can be used to customize the connection. Generally you will provide keyspace-name
and contact-points
properties:
spring.data.cassandra.keyspace-name=mykeyspace spring.data.cassandra.contact-points=cassandrahost1,cassandrahost2
_@Component_ public class MyBean { private CassandraTemplate template; _@Autowired_ public MyBean(CassandraTemplate template) { this.template = template; } // ... }
If you add a @Bean
of your own of type CassandraTemplate
it will replace the default.
30.7.2 Spring Data Cassandra repositories
Spring Data includes basic repository support for Cassandra. Currently this is more limited than the JPA repositories discussed earlier, and will need to annotate finder methods with @Query
.
Tip | |
---|---|
For complete details of Spring Data Cassandra, refer to their reference documentation. |