我试图在映射cassandra表以引发rdd时使用Java类,为此我面临着cassandra无法创建查询以获取数据的问题。
根据此链接https://github.com/datastax/spark-cassandra-connector/blob/master/doc/6_advanced_mapper.md,一个类必须可序列化,并且至少要尝试映射的表的主键列具有“ getters”和“ setters”。
所以我要做的是,我创建了一个Java类,为每个字段创建了公共的getter和setter方法,将该类映射到了scala伴侣对象,并将其用于映射cassandra表,同时将数据检索到rdd中。 / p>
我已在图像链接中添加了代码。
当我使用scala类时,以上所有内容都能无缝运行
答案 0 :(得分:0)
它在设计上对您不起作用-您提供的课程表中没有任何字段。映射器类分析您的POJO类,并提取所有getter和setter并使用它们在数据库中查找字段的名称。映射器将从方法名称中删除get/set/is
前缀,并将该方法名称的其余部分小写,并将其用作字段名称。
您需要定义POJO类,使字段(和设置器/获取器)的格式至少是表主键的字段。