2
私はAchillesでCassandra 3.6を使用しています。私はカッサンドラで以下のテーブルを設計しました。Cassandra Achilles:1対多のマッピング
CREATE TABLE userVehicles (
userid text,
name text static,
surname text static,
vehicleNum text,
vehicleMake text,
vehicleModel text,
vehicleYear text,
PRIMARY KEY (userid)
);
私は、単一のユーザーに添付多くの車両を持って、私はユーザーIDを選択しますされます、私は、ユーザーの詳細情報を取得する必要がありますし、すべての車両が彼に属します。
アキレスでこれをどのようにマップするのですか?
更新テーブル
CREATE TYPE Vehicle(
---------
)
そしてuserVehiclesテーブルに
vehicleDetails LIST<FROZEN<Vehicle>>
しようとしましたAchilliesマッピング
@Table(keyspace="keyspace", table="userVehicles")
public class UserDetails{
@PartitionKey(value = 1)
private String userid ;
@Column
private String name ;
@Column
private String surname;
@Column
private List<@Frozen Vehicle> vehicle;
}
@UDT(keyspace="keyspace", name="vehicle")
public class Vehicle {
@Column
private String vehicleNum ;
@NotNull
@Column
private String vehicleMake ;
@Column
private String vehicleModel ;
@NotNull
@Column
private String vehicleYear ;
}
@Configuration
@CompileTimeConfig(cassandraVersion = CassandraVersion.CASSANDRA_3_7)
public class AchillesConfiguration {
@Autowired
ManagerFactory managerFactory;
@Bean
public User_Manager userEntityManager(){
return managerFactory.forUser();
}
}
何を試しましたか?あなたは車両のテーブル定義は何ですか? – Ivan
上記の新しい構造を更新しました。 – NGR
あなたはどのようなakillesマッピングコードを持っていますか? – Ivan