如何解决Cassandra用嵌套对象创建表
我正在尝试将数据插入请求主体为
的表中{
"a": {
"hostUrl": "url path"
},"b": {
"hostUrl": "abc","hostPort": "port num"
},"c": {
"Username ": "username"
}
}
CREATE TABLE IF NOT EXISTS tabletest( a map<text,text>,b map<text,c map<text,created_at text PRIMARY KEY,updated_at text,enabled int);
我能够从cqlsh插入数据,但不能从Mapper(com.datastax.driver.mapping.Mapper)插入数据
从impl保存时出错的代码段:
Mapper<DtoClassName> mapper = mappingManager.mapper(DtoClassName);
mapper.save(dtoClassName);
错误:
未找到所请求操作的编解码器:[map
-位于
(这里a是请求正文中的第一个对象)。
解决方法
DTO Class文件出现问题,因此通过将其从Class转换为Map
@Column(name = "a")
private Map<String,String> a;
@Column(name = "b")
private Map<String,String> b;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。