【发布时间】:2014-11-12 01:24:34
【问题描述】:
我们正在使用 Java EE、Spring、JPA 和 JSF 重写旧应用程序。这项工作处于设计的早期阶段。我们查看了现有的数据库。有几个表有很多列。其中之一有大约 800 列。计划是规范化表格和数据。
我只是想知道为具有大量列的表创建 JPA 2.0 实体是否存在上限。我知道小桌子更好。
对我应该如何进行设计有什么建议吗?
【问题讨论】:
标签: database hibernate jpa entity jpa-2.0
我们正在使用 Java EE、Spring、JPA 和 JSF 重写旧应用程序。这项工作处于设计的早期阶段。我们查看了现有的数据库。有几个表有很多列。其中之一有大约 800 列。计划是规范化表格和数据。
我只是想知道为具有大量列的表创建 JPA 2.0 实体是否存在上限。我知道小桌子更好。
对我应该如何进行设计有什么建议吗?
【问题讨论】:
标签: database hibernate jpa entity jpa-2.0
如果涉及到设计,您无能为力。一种简单的方法是让代码保持干净,即提取一些公共域列并从中创建@Embeddable 类。
另一种选择是创建物化视图,其中包含要一起检索的列,并为它们创建单独的只读实体 - 这只有在您不打算向它们写入任何内容时才有效。
AFAIK JPA 及其最大的提供者不限于表中的任意数量的列,但是在此类实体上执行诸如 findAll() 之类的操作的成本可能真的很有害。
【讨论】: