我在cassandra中有以下用户定义的类型:
CREATE TYPE key(
name text,
created_time timestamp
);
如下表所示:
CREATE TABLE keys(
id uuid,
keys map<text, frozen<list<key>>>
);
**请注意,下面的POJOS还包含setter / getters,为了便于阅读而剪断**
然后我有以下POJO用于映射key
:
@UserDefinedType(value = "key")
public class MyKey {
@Column(value = "name")
private String name;
@Column(value = "created_time")
private Instant createdTime;
}
我有keys
@Table(value = "keys")
public class MyKeys {
@PrimaryKey(value = "id")
private UUID id;
@Column(value = "keys")
private Map<String, List<Key>> keys;
}
不幸的是,当我尝试插入MyKeys
的实例时,我收到以下错误:
org.springframework.dao.InvalidDataAccessApiUsageException:实体[com.utx.dao.tables.MyKeys]中[类型[interface java.util.Map]的属性[keys]的集合中只允许使用基本类型
Spring-Data-Cassandra映射器是否不适用于用户定义类型的映射,如果没有,是否有解决我问题的方法?