Java Scala案例类的arity限制和jvm 254限制

Java Scala案例类的arity限制和jvm 254限制,java,scala,Java,Scala,什么是新的Scala案例类arity限制 在scala 2.11中,取消了case类的22限制 新的限额是多少 它能超过254的jvm限制吗 谢谢没有新的限制。更改的目的是取消该限制(请参阅)。因为它已经被移除,所以从Scala的角度来看,它在理论上是无限的。如果您的表中有超过254个字段,那么我强烈建议您规范化您的数据库设计,或者更彻底地重新构建您的数据库架构,因为当一个表中有254个字段时,显然有些问题。我只是好奇,是否有任何理由希望超越254?我们使用Scala case类作为模式生成器。

什么是新的Scala案例类arity限制

在scala 2.11中,取消了case类的22限制

新的限额是多少

它能超过254的jvm限制吗


谢谢

没有新的限制。更改的目的是取消该限制(请参阅)。因为它已经被移除,所以从Scala的角度来看,它在理论上是无限的。如果您的表中有超过254个字段,那么我强烈建议您规范化您的数据库设计,或者更彻底地重新构建您的数据库架构,因为当一个表中有254个字段时,显然有些问题。

我只是好奇,是否有任何理由希望超越254?我们使用Scala case类作为模式生成器。许多表有超过254个字段,由于jvm的限制,这些字段在较旧的Scala中会中断。我不确定新的2.11是如何实现的,所以我想知道,由于jvm方法的限制,这是否仍然是254的物理限制。或者它以不同的方式实现,没有达到jvm限制“表超过254个字段”-你没有听说过规范化吗?我们无法更改现有的大型机表。你可以随时重新建模数据库架构的一部分,该架构具有非常宽的表和视图。好的,我检查了创建超过254列的case类,代码无法编译。它抛出堆栈溢出异常。这就是极限。这是在真空中给出的非常糟糕的建议。整个大数据世界都在非规范化中蓬勃发展,我看到了一些例子,其中有大量的列是有意义的。此外,它与问题无关,只是询问技术限制,并没有询问关于数据模型的一些意识形态。此外,有时您需要接收源,您无法控制从源限制列,一个建议是使用列名到数据类型的映射来解决caseclass 254的限制。