I Frühling Daten Cassandra verwenden, mit Cassandra Datenbank zu verbinden, mit Konfigurationsdatei AbstractCassandraConfiguration und übergeordnete Funktionen erstrecken -Frühling Daten unterstützen Tabellen erstellen java Einheiten mit
@Override
public SchemaAction getSchemaAction() {
return SchemaAction.RECREATE_DROP_UNUSED;
}
@Override
public String[] getEntityBasePackages() {
return new String[] {"com.example"};
}
Mein Ziel ist es Tabellen automatisch in Cassandra zu erstellen von den erwähnten Entitäten in com.example Paket mit @Table Annotation. Zum Beispiel -
package com.example;
import org.springframework.data.cassandra.mapping.PrimaryKey;
import org.springframework.data.cassandra.mapping.Table;
@Table(value="goal")
public class Goal {
@PrimaryKey
private int id;
private String description;
public Goal(int id, String description) {
this.id = id;
this.description = description;
}
public Goal() {
}
public int getId() {
return id;
}
public String getDescription() {
return description;
}
public void setId(int id) {
this.id = id;
}
public void setDescription(String description) {
this.description = description;
}
@Override
public String toString() {
return "Goals [id=" + id + ", description=" + description + "]";
}
}
Für diese Einheit, mit der gegebenen Konfiguration sollte eine Tabelle im Frühjahr Initialisierung erstellt, aber es nicht zu tun. Keine Ausnahme, es schafft nichts in Cassandra. Jede Hilfe wäre willkommen. Vielen Dank.
Wenn Spring Boot verwendet wird, funktioniert dies nicht sofort aus der Box. Es gibt ein offenes Ticket (https://github.com/spring-projects/spring-boot/issues/4886) für dieses Problem, vielleicht möchtest du deine Stimme abgeben. – mp911de
Vorsicht, generell ist es eine schlechte Idee, eine Anwendung * automatisch * ein Schema für Sie generieren zu lassen. Schema und Datenmodell sind entscheidend für den Erfolg deiner Apps bei Cassandra also pass auf dich auf – doanduyhai
Hi @ mp911de, Danke für den Kommentar. Aber ich denke, das Ändern der Eigenschaft ** SchemaAction ** sollte funktionieren. Ich erstelle bereits die Bean von ** BasicCassandraMappingContext **, also sollte es Idealerweise funktionieren. Gibt es eine Problemumgehung zum automatischen Erstellen der Tabellen von Entitäten ab sofort? – Bhushan