Skip to content

Commit 23f4970

Browse files
authored
JAVA-41263 Move spring-data-cassandratemplate-cqltemplate article from spring-data-cassandra to spring-data-cassandra-2 (#18692)
1 parent db70fb6 commit 23f4970

File tree

4 files changed

+104
-2
lines changed

4 files changed

+104
-2
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
package org.baeldung.spring.data.cassandra.model;
2+
3+
import java.util.HashSet;
4+
import java.util.Set;
5+
import java.util.UUID;
6+
7+
import org.springframework.data.cassandra.core.cql.Ordering;
8+
import org.springframework.data.cassandra.core.cql.PrimaryKeyType;
9+
import org.springframework.data.cassandra.core.mapping.Column;
10+
import org.springframework.data.cassandra.core.mapping.PrimaryKeyColumn;
11+
import org.springframework.data.cassandra.core.mapping.Table;
12+
13+
@Table
14+
public class Book {
15+
16+
@PrimaryKeyColumn(name = "id", ordinal = 0, type = PrimaryKeyType.CLUSTERED, ordering = Ordering.DESCENDING)
17+
private UUID id;
18+
19+
@PrimaryKeyColumn(name = "title", ordinal = 1, type = PrimaryKeyType.PARTITIONED)
20+
private String title;
21+
22+
@PrimaryKeyColumn(name = "publisher", ordinal = 2, type = PrimaryKeyType.PARTITIONED)
23+
private String publisher;
24+
25+
@Column
26+
private Set<String> tags = new HashSet<>();
27+
28+
public Book() {
29+
}
30+
31+
public Book(final UUID id, final String title, final String publisher, final Set<String> tags) {
32+
this.id = id;
33+
this.title = title;
34+
this.publisher = publisher;
35+
this.tags.addAll(tags);
36+
}
37+
38+
public UUID getId() {
39+
return id;
40+
}
41+
42+
public String getTitle() {
43+
return title;
44+
}
45+
46+
public String getPublisher() {
47+
return publisher;
48+
}
49+
50+
public Set getTags() {
51+
return tags;
52+
}
53+
54+
public void setId(final UUID id) {
55+
this.id = id;
56+
}
57+
58+
public void setTitle(final String title) {
59+
this.title = title;
60+
}
61+
62+
public void setPublisher(final String publisher) {
63+
this.publisher = publisher;
64+
}
65+
66+
public void setTags(final Set<String> tags) {
67+
this.tags = tags;
68+
}
69+
70+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.baeldung.spring.data.cassandra.repository;
2+
3+
import java.util.UUID;
4+
5+
import org.baeldung.spring.data.cassandra.model.Book;
6+
import org.springframework.data.cassandra.repository.CassandraRepository;
7+
import org.springframework.stereotype.Repository;
8+
9+
10+
@Repository
11+
public interface BookRepository extends CassandraRepository<Book, UUID> {
12+
13+
Iterable<Book> findByTitleAndPublisher(String title, String publisher);
14+
15+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.spring.data.cassandra.repository;
1+
package org.baeldung.spring.data.cassandra;
22

33
import static com.datastax.oss.driver.api.querybuilder.QueryBuilder.literal;
44
import static org.hamcrest.CoreMatchers.is;
@@ -9,6 +9,7 @@
99
import java.util.List;
1010
import java.util.Set;
1111

12+
import org.baeldung.spring.data.cassandra.model.Book;
1213
import org.junit.jupiter.api.AfterAll;
1314
import org.junit.jupiter.api.BeforeAll;
1415
import org.junit.jupiter.api.BeforeEach;
@@ -20,7 +21,6 @@
2021
import org.testcontainers.junit.jupiter.Container;
2122
import org.testcontainers.junit.jupiter.Testcontainers;
2223

23-
import com.baeldung.spring.data.cassandra.model.Book;
2424
import com.datastax.oss.driver.api.core.CqlIdentifier;
2525
import com.datastax.oss.driver.api.core.CqlSession;
2626
import com.datastax.oss.driver.api.core.cql.SimpleStatement;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package org.baeldung.spring.data.cassandra;
2+
3+
import org.springframework.boot.test.context.TestConfiguration;
4+
import org.springframework.context.annotation.Bean;
5+
import org.springframework.data.cassandra.core.CassandraAdminTemplate;
6+
import org.springframework.data.cassandra.core.convert.CassandraConverter;
7+
8+
import com.datastax.oss.driver.api.core.CqlSession;
9+
10+
@TestConfiguration
11+
public class CassandraTestConfiguration {
12+
13+
@Bean
14+
public CassandraAdminTemplate cassandraTemplate(CqlSession session, CassandraConverter converter) {
15+
return new CassandraAdminTemplate(session, converter);
16+
}
17+
}

0 commit comments

Comments
 (0)