Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 幻象DSL建模案例类_Scala_Cassandra_Data Modeling_Phantom Dsl - Fatal编程技术网

Scala 幻象DSL建模案例类

Scala 幻象DSL建模案例类,scala,cassandra,data-modeling,phantom-dsl,Scala,Cassandra,Data Modeling,Phantom Dsl,我知道scala和/或JVM在案例类上有22个以上字段的限制,最好的方法是分成多个案例类,例如: case class User(id: Long, username: String, password: String, address: Address) case class Address(id: Long, street: String, city: String) 但看看幻影dsl文档,所有文档和示例都指向一个案例类 我能看到的唯一例外是在这个测试中使用JsonTable 问题是。。

我知道scala和/或JVM在案例类上有22个以上字段的限制,最好的方法是分成多个案例类,例如:

case class User(id: Long, username: String, password: String, address: Address)
case class Address(id: Long, street: String, city: String)
但看看幻影dsl文档,所有文档和示例都指向一个案例类

我能看到的唯一例外是在这个测试中使用JsonTable

问题是。。。如何使用phantom dsl为大型表建模内部案例类

编辑

只是为了弄清楚,他们反对我试图映射到幻影


想象一下,一张卡桑德拉表有30,40个字段。我应该如何使用case类映射表?由于我将通过rest服务通过json接收这些字段,JsonTable示例是正确的方法吗?

由于scala 2.11不再有case classes 22字段限制,您可以将所有字段声明为平面或使用JsonTable示例来抽象结构。

JVM没有这么低的限制,根据:一个类或接口可以声明的字段的数量受类文件结构()的字段计数项的大小限制为65535个。您所说的内部大小写类是什么意思?您可以使用JSON、Thrift或其他序列化工具。唯一的其他选择是UDT,它在phantom中还不可用。JSON是内格类的简单选择,phantom可以与任何JSON框架一起工作。@flavian我刚刚编辑了我的问题,但我相信你刚才给了我关于JSON表的答案。因此,我应该映射扩展json表的“内部”case类,而不是映射普通方法。如果你想把它作为答案发布,我很乐意接受。22字段的限制不再适用于Scala 2.11。看,太棒了!谢谢你@SoumyaSimanta