JAVA-29179 Upgrade spring-data-cassandra-2 to Spring Boot 3 (#16066)
This commit is contained in:
parent
830c5608d8
commit
375015808d
@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>com.baeldung</groupId>
|
<groupId>com.baeldung</groupId>
|
||||||
<artifactId>parent-boot-2</artifactId>
|
<artifactId>parent-boot-3</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
<relativePath>../../parent-boot-2</relativePath>
|
<relativePath>../../parent-boot-3</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
@ -63,7 +63,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.datastax.oss</groupId>
|
<groupId>com.datastax.oss</groupId>
|
||||||
<artifactId>java-driver-mapper-runtime</artifactId>
|
<artifactId>java-driver-mapper-runtime</artifactId>
|
||||||
<version>4.15.0</version>
|
<version>4.17.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.junit.jupiter</groupId>
|
<groupId>org.junit.jupiter</groupId>
|
||||||
@ -99,10 +99,11 @@
|
|||||||
</build>
|
</build>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<org.springframework.data.version>3.4.15</org.springframework.data.version>
|
<org.springframework.data.version>4.1.9</org.springframework.data.version>
|
||||||
<testcontainers.version>1.19.0</testcontainers.version>
|
<testcontainers.version>1.19.5</testcontainers.version>
|
||||||
<system.stubs.version>1.1.0</system.stubs.version>
|
<system.stubs.version>2.1.5</system.stubs.version>
|
||||||
<junit.jupiter.version>5.9.3</junit.jupiter.version>
|
<junit.jupiter.version>5.9.3</junit.jupiter.version>
|
||||||
|
<start-class>org.baeldung.springcassandra.SpringCassandraApplication</start-class>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
</project>
|
</project>
|
@ -1,4 +1,4 @@
|
|||||||
spring.data.cassandra.keyspace-name=${CASSANDRA_KEYSPACE_NAME}
|
spring.cassandra.keyspace-name=${CASSANDRA_KEYSPACE_NAME}
|
||||||
spring.data.cassandra.contact-points=${CASSANDRA_CONTACT_POINTS}
|
spring.cassandra.contact-points=${CASSANDRA_CONTACT_POINTS}
|
||||||
spring.data.cassandra.port=${CASSANDRA_PORT}
|
spring.cassandra.port=${CASSANDRA_PORT}
|
||||||
spring.data.cassandra.local-datacenter=datacenter1
|
spring.cassandra.local-datacenter=datacenter1
|
@ -14,6 +14,8 @@ import org.testcontainers.containers.CassandraContainer;
|
|||||||
import org.testcontainers.junit.jupiter.Container;
|
import org.testcontainers.junit.jupiter.Container;
|
||||||
import org.testcontainers.junit.jupiter.Testcontainers;
|
import org.testcontainers.junit.jupiter.Testcontainers;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
@ -30,14 +32,14 @@ class ProductRepositoryNestedLiveTest {
|
|||||||
private static final String KEYSPACE_NAME = "mynamespace";
|
private static final String KEYSPACE_NAME = "mynamespace";
|
||||||
|
|
||||||
@Container
|
@Container
|
||||||
private static final CassandraContainer cassandra = (CassandraContainer) new CassandraContainer("cassandra:3.11.2")
|
private static final CassandraContainer<?> cassandra = new CassandraContainer<>("cassandra:3.11.2")
|
||||||
.withExposedPorts(9042);
|
.withExposedPorts(9042);
|
||||||
|
|
||||||
@BeforeAll
|
@BeforeAll
|
||||||
static void setupCassandraConnectionProperties() {
|
static void setupCassandraConnectionProperties() {
|
||||||
System.setProperty("spring.data.cassandra.keyspace-name", KEYSPACE_NAME);
|
System.setProperty("spring.cassandra.keyspace-name", KEYSPACE_NAME);
|
||||||
System.setProperty("spring.data.cassandra.contact-points", cassandra.getHost());
|
System.setProperty("spring.cassandra.contact-points", cassandra.getHost());
|
||||||
System.setProperty("spring.data.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
System.setProperty("spring.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
||||||
createKeyspace(cassandra.getCluster());
|
createKeyspace(cassandra.getCluster());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,9 +74,9 @@ class ProductRepositoryNestedLiveTest {
|
|||||||
Product product3 = new Product(productId3, "Banana", "Banana v1", 5.5);
|
Product product3 = new Product(productId3, "Banana", "Banana v1", 5.5);
|
||||||
Product product4 = new Product(productId3, "Banana v2", "Banana v2", 15.5);
|
Product product4 = new Product(productId3, "Banana v2", "Banana v2", 15.5);
|
||||||
|
|
||||||
productRepository.saveAll(List.of(product1, product2, product3, product4));
|
productRepository.saveAll(Arrays.asList(product1, product2, product3, product4));
|
||||||
|
|
||||||
List<Product> existingProducts = productRepository.findByProductIds(List.of(productId1, productId2));
|
List<Product> existingProducts = productRepository.findByProductIds(Arrays.asList(productId1, productId2));
|
||||||
assertEquals(2, existingProducts.size());
|
assertEquals(2, existingProducts.size());
|
||||||
assertTrue(existingProducts.contains(product1));
|
assertTrue(existingProducts.contains(product1));
|
||||||
assertTrue(existingProducts.contains(product2));
|
assertTrue(existingProducts.contains(product2));
|
||||||
@ -89,10 +91,10 @@ class ProductRepositoryNestedLiveTest {
|
|||||||
Product product3 = new Product(productId2, "Banana", "Banana v1", 5.5);
|
Product product3 = new Product(productId2, "Banana", "Banana v1", 5.5);
|
||||||
Product product4 = new Product(productId2, "Banana v2", "Banana v2", 15.5);
|
Product product4 = new Product(productId2, "Banana v2", "Banana v2", 15.5);
|
||||||
|
|
||||||
productRepository.saveAll(List.of(product1, product2, product3, product4));
|
productRepository.saveAll(Arrays.asList(product1, product2, product3, product4));
|
||||||
|
|
||||||
List<Product> existingProducts = productRepository.findByProductIdAndNames(productId1,
|
List<Product> existingProducts = productRepository.findByProductIdAndNames(productId1,
|
||||||
List.of(product1.getProductName(), product2.getProductName()));
|
Arrays.asList(product1.getProductName(), product2.getProductName()));
|
||||||
assertEquals(2, existingProducts.size());
|
assertEquals(2, existingProducts.size());
|
||||||
assertTrue(existingProducts.contains(product1));
|
assertTrue(existingProducts.contains(product1));
|
||||||
assertTrue(existingProducts.contains(product2));
|
assertTrue(existingProducts.contains(product2));
|
||||||
@ -107,10 +109,11 @@ class ProductRepositoryNestedLiveTest {
|
|||||||
Product product3 = new Product(productId2, "Banana", "Banana v1", 5.5);
|
Product product3 = new Product(productId2, "Banana", "Banana v1", 5.5);
|
||||||
Product product4 = new Product(productId2, "Banana v2", "Banana v2", 15.5);
|
Product product4 = new Product(productId2, "Banana v2", "Banana v2", 15.5);
|
||||||
|
|
||||||
productRepository.saveAll(List.of(product1, product2, product4));
|
productRepository.saveAll(Arrays.asList(product1, product2, product4));
|
||||||
|
|
||||||
List<Product> existingProducts = productRepository.findByProductIdAndNames(productId1,
|
List<Product> existingProducts = productRepository.findByProductIdAndNames(productId1,
|
||||||
List.of(product3.getProductName()));
|
Collections.singletonList(product3.getProductName())
|
||||||
|
);
|
||||||
assertEquals(0, existingProducts.size());
|
assertEquals(0, existingProducts.size());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -25,13 +25,13 @@ public class MapperLiveTest {
|
|||||||
private static final String KEYSPACE_NAME = "baeldung";
|
private static final String KEYSPACE_NAME = "baeldung";
|
||||||
|
|
||||||
@Container
|
@Container
|
||||||
private static final CassandraContainer cassandra = (CassandraContainer) new CassandraContainer("cassandra:3.11.2").withExposedPorts(9042);
|
private static final CassandraContainer<?> cassandra = new CassandraContainer<>("cassandra:3.11.2").withExposedPorts(9042);
|
||||||
|
|
||||||
@BeforeAll
|
@BeforeAll
|
||||||
static void setupCassandraConnectionProperties() {
|
static void setupCassandraConnectionProperties() {
|
||||||
System.setProperty("spring.data.cassandra.keyspace-name", KEYSPACE_NAME);
|
System.setProperty("spring.cassandra.keyspace-name", KEYSPACE_NAME);
|
||||||
System.setProperty("spring.data.cassandra.contact-points", cassandra.getHost());
|
System.setProperty("spring.cassandra.contact-points", cassandra.getHost());
|
||||||
System.setProperty("spring.data.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
System.setProperty("spring.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
||||||
setupCassandra(new InetSocketAddress(cassandra.getHost(), cassandra.getMappedPort(9042)), cassandra.getLocalDatacenter());
|
setupCassandra(new InetSocketAddress(cassandra.getHost(), cassandra.getMappedPort(9042)), cassandra.getLocalDatacenter());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -92,5 +92,4 @@ public class MapperLiveTest {
|
|||||||
.all();
|
.all();
|
||||||
Assertions.assertEquals(1, retrievedUsers.size());
|
Assertions.assertEquals(1, retrievedUsers.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -14,6 +14,7 @@ import org.testcontainers.containers.CassandraContainer;
|
|||||||
import org.testcontainers.junit.jupiter.Container;
|
import org.testcontainers.junit.jupiter.Container;
|
||||||
import org.testcontainers.junit.jupiter.Testcontainers;
|
import org.testcontainers.junit.jupiter.Testcontainers;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
@ -28,14 +29,14 @@ class CassandraNestedLiveTest {
|
|||||||
private static final String KEYSPACE_NAME = "test";
|
private static final String KEYSPACE_NAME = "test";
|
||||||
|
|
||||||
@Container
|
@Container
|
||||||
private static final CassandraContainer cassandra = (CassandraContainer) new CassandraContainer("cassandra:3.11.2")
|
private static final CassandraContainer<?> cassandra = new CassandraContainer<>("cassandra:3.11.2")
|
||||||
.withExposedPorts(9042);
|
.withExposedPorts(9042);
|
||||||
|
|
||||||
@BeforeAll
|
@BeforeAll
|
||||||
static void setupCassandraConnectionProperties() {
|
static void setupCassandraConnectionProperties() {
|
||||||
System.setProperty("spring.data.cassandra.keyspace-name", KEYSPACE_NAME);
|
System.setProperty("spring.cassandra.keyspace-name", KEYSPACE_NAME);
|
||||||
System.setProperty("spring.data.cassandra.contact-points", cassandra.getContainerIpAddress());
|
System.setProperty("spring.cassandra.contact-points", cassandra.getContainerIpAddress());
|
||||||
System.setProperty("spring.data.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
System.setProperty("spring.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
||||||
|
|
||||||
createKeyspace(cassandra.getCluster());
|
createKeyspace(cassandra.getCluster());
|
||||||
}
|
}
|
||||||
@ -70,7 +71,7 @@ class CassandraNestedLiveTest {
|
|||||||
|
|
||||||
carRepository.save(newCar);
|
carRepository.save(newCar);
|
||||||
|
|
||||||
List<Car> savedCars = carRepository.findAllById(List.of(carId));
|
List<Car> savedCars = carRepository.findAllById(Collections.singletonList(carId));
|
||||||
assertThat(savedCars.get(0)).isEqualTo(newCar);
|
assertThat(savedCars.get(0)).isEqualTo(newCar);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,7 +83,7 @@ class CassandraNestedLiveTest {
|
|||||||
existingCar.setModel("X-Trail");
|
existingCar.setModel("X-Trail");
|
||||||
carRepository.save(existingCar);
|
carRepository.save(existingCar);
|
||||||
|
|
||||||
List<Car> savedCars = carRepository.findAllById(List.of(carId));
|
List<Car> savedCars = carRepository.findAllById(Collections.singletonList(carId));
|
||||||
assertThat(savedCars.get(0).getModel()).isEqualTo("X-Trail");
|
assertThat(savedCars.get(0).getModel()).isEqualTo("X-Trail");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,10 +94,8 @@ class CassandraNestedLiveTest {
|
|||||||
|
|
||||||
carRepository.delete(existingCar);
|
carRepository.delete(existingCar);
|
||||||
|
|
||||||
List<Car> savedCars = carRepository.findAllById(List.of(carId));
|
List<Car> savedCars = carRepository.findAllById(Collections.singletonList(carId));
|
||||||
assertThat(savedCars.isEmpty()).isTrue();
|
assertThat(savedCars).isEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -20,14 +20,14 @@ class CassandraSimpleLiveTest {
|
|||||||
private static final String KEYSPACE_NAME = "test";
|
private static final String KEYSPACE_NAME = "test";
|
||||||
|
|
||||||
@Container
|
@Container
|
||||||
private static final CassandraContainer cassandra = (CassandraContainer) new CassandraContainer("cassandra:3.11.2")
|
private static final CassandraContainer<?> cassandra = new CassandraContainer<>("cassandra:3.11.2")
|
||||||
.withExposedPorts(9042);
|
.withExposedPorts(9042);
|
||||||
|
|
||||||
@BeforeAll
|
@BeforeAll
|
||||||
static void setupCassandraConnectionProperties() {
|
static void setupCassandraConnectionProperties() {
|
||||||
System.setProperty("spring.data.cassandra.keyspace-name", KEYSPACE_NAME);
|
System.setProperty("spring.cassandra.keyspace-name", KEYSPACE_NAME);
|
||||||
System.setProperty("spring.data.cassandra.contact-points", cassandra.getContainerIpAddress());
|
System.setProperty("spring.cassandra.contact-points", cassandra.getContainerIpAddress());
|
||||||
System.setProperty("spring.data.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
System.setProperty("spring.cassandra.port", String.valueOf(cassandra.getMappedPort(9042)));
|
||||||
|
|
||||||
createKeyspace(cassandra.getCluster());
|
createKeyspace(cassandra.getCluster());
|
||||||
}
|
}
|
||||||
@ -43,5 +43,4 @@ class CassandraSimpleLiveTest {
|
|||||||
void givenCassandraContainer_whenSpringContextIsBootstrapped_thenContainerIsRunningWithNoExceptions() {
|
void givenCassandraContainer_whenSpringContextIsBootstrapped_thenContainerIsRunningWithNoExceptions() {
|
||||||
assertThat(cassandra.isRunning()).isTrue();
|
assertThat(cassandra.isRunning()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
spring.data.cassandra.keyspace-name=${CASSANDRA_KEYSPACE_NAME}
|
spring.cassandra.keyspace-name=${CASSANDRA_KEYSPACE_NAME}
|
||||||
spring.data.cassandra.contact-points=${CASSANDRA_CONTACT_POINTS}
|
spring.cassandra.contact-points=${CASSANDRA_CONTACT_POINTS}
|
||||||
spring.data.cassandra.port=${CASSANDRA_PORT}
|
spring.cassandra.port=${CASSANDRA_PORT}
|
||||||
spring.data.cassandra.local-datacenter=datacenter1
|
spring.cassandra.local-datacenter=datacenter1
|
||||||
spring.data.cassandra.schema-action=create_if_not_exists
|
spring.cassandra.schema-action=create_if_not_exists
|
Loading…
x
Reference in New Issue
Block a user