[스프링] 스프링 부트 애플리케이션에서의 Cassandra 클러스터 연결

이번 글에서는 스프링 부트 애플리케이션에서 Cassandra 클러스터를 연결하는 방법에 대해 알아보겠습니다.

Cassandra 연결 설정

우선, build.gradle 파일에 다음과 같은 의존성을 추가합니다.

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-cassandra'
}

다음으로, application.properties 파일에 Cassandra 클러스터의 연결 정보를 설정합니다.

spring.data.cassandra.contact-points=127.0.0.1
spring.data.cassandra.port=9042
spring.data.cassandra.keyspace-name=mykeyspace

위의 예제에서는 contact-points, port, keyspace-name을 각각 Cassandra 클러스터의 주소, 포트, 키스페이스 이름으로 설정하였습니다.

Repository 생성

Cassandra 데이터에 접근하기 위해 Repository를 생성합니다.

import org.springframework.data.cassandra.repository.CassandraRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface ProductRepository extends CassandraRepository<Product, String> {
}

위의 예제에서는 Product 엔티티를 다루는 ProductRepository를 생성하였습니다.

서비스 계층 구현

이제 Cassandra 클러스터와 상호작용할 수 있는 서비스 계층을 구현합니다.

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class ProductService {
    @Autowired
    private ProductRepository productRepository;
  
    public Product getProductById(String id) {
        return productRepository.findById(id).orElse(null);
    }
  
    // 다른 메서드 구현
}

위의 예제에서는 ProductService에서 ProductRepository를 주입하여 Cassandra에서 데이터를 가져오는 메서드를 구현하였습니다.

결론

스프링 부트 애플리케이션에서 Cassandra 클러스터를 연결하기 위해서는 의존성 추가, 연결 정보 설정, Repository 및 서비스 계층의 구현이 필요합니다. 위의 예제를 참고하여 Cassandra 클러스터와의 연동에 성공해 보세요!

관련 참고 자료 :