Spring Boot + Cassandra

Spring Boot + Cassandra

2021, Oct 14    

Hướng dẫn tích hợp Cassandra trong Spring Boot application

  • Thêm dependency trong pom.xml
<dependencies>
    <dependency>
        <groupId>org.springframework.kafka</groupId>
        <artifactId>spring-boot-starter-data-cassandra</artifactId>
    </dependency>
</dependencies>
  • Thêm cấu hình Cassandra trong file application.yml
spring:
  data:
    cassandra:
      contact-points: 127.0.0.1
      port: 9042
      keyspace-name: spring_boot_cassandra_example
  • Tạo class entity mapping table trong cassandra
@Data
@Table("User")
public class UserEntity {

  @PrimaryKey("user_id")
  private long userId;

  @Column("user_name")
  private String userName;

}
  • Tạo Repository thao tác với table
@Repository
public interface UserRepository extends CassandraRepository<UserEntity, Long> {

}
  • Sử dụng Repository để thực hiện query đến database
  @Autowired
  UserRepository userRepository;
    
  @Override
  public Greeting greet(long userId) {
    UserEntity userEntity = userRepository.findById(userId).get();
    return new Greeting(userEntity.getUserId(), String.format("Hello %s!", userEntity.getUserName()));
  }

Source code ở đây