clickhouse的nested嵌套结构如何映射Java实体类?
假如clickhouse中有如下一张表结构
CREATE TABLE `member`
(
`uid` Int32 COMMENT 'uid',
`branch` Nested (
`subject` String ,
`fraction` UInt8
) COMMENT '分数',
`hobby` Nested (
`subject` String ,
`rank` UInt8
) COMMENT '爱好'
) ENGINE = MergeTree
ORDER BY (uid)
PRIMARY KEY uid;
插入一条数据
INSERT into member (uid, branch.subject, branch.fraction, hobby.subject, hobby.rank) values (1, ['语文', '数学', '英语'], [90, 100, 88], ['打球', '唱歌'], [1, 2]);
对应的Java实体类如下(按我的理解应该是这个结构)
/**
* Member实体
*/
public class Member {
private Integer uid;
private List<Branch> branch;
private List<Hobby> hobby;
}
/**
* Branch实体
*/
public class Branch {
private String subject;
private Integer fraction;
}
/**
* Hobby实体
*/
public class Hobby {
private String subject;
private Integer rank;
}
我想在确保表结构不变的情况下,映射到Java实体类中数据的结构应该是下面这样
[
{
uid: 1,
branch: [
{
subject: "语文",
fraction: 90
},
{
subject: "数学",
fraction: 100
},
{
subject: "英语",
fraction: 88
}
],
hobby: [
{
subject: "打球",
rank: 1
},
{
subject: "唱歌",
rank: 2
}
]
}
]
我该如何在mybatis或者通过其他方法将clickhouse的nested结构的数据映射到如上结构的数据呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论