0

我正在使用 Spring + Hibernate,我将拥有一个包含 100 多个字段的 HTML,我必须将所有这些值存储到数据库中的单个表中。

它们都用于一项大型计算。

我应该如何处理这个问题,我想过创建一个具有 100 个字段和 setter、getter 的实体,但是有更好的解决方案吗?

编辑:

每次有人提交表单时,都会添加一个新行,因此最终会有数万行。

4

2 回答 2

2

我相信它不是关于 HTML,而是关于数据建模。想想你的数据,谁是它的消费者,你将如何以及在哪些业务流中查询数据。一般来说,具有 100 个字段的实体不是一个好主意,因为它应该映射到一个具有 100 列的单个表。它只是不可维护。

也许所有的数据都应该被规范化,你可以用外键将它的一部分存储在 db 的不同表中?

希望这会有所帮助,或者至少会给您一些思考的方向

于 2012-09-11T06:39:14.820 回答
0

我认为您可以Map在这种情况下使用 a ,因为:

  • 您只想将字段存储为键值元素。
  • 将来添加/删除字段更加灵活。

因此,不是有一个包含 100 个字段的表,而是一个包含 2 个字段(如果要包含表单标识符或类似的东西,则为 3 个)和 100 行的表。

如果许多表单字段为空(稀疏数据),您还可以节省一些存储空间(这取决于您使用的数据库)。

于 2012-09-11T06:40:32.287 回答