1

我正在使用 JSF,并且我有一个复杂的数据表,用户可以在其中按列标题排序、重新排序单个条目等。该表本身包含由只读和可自由编辑的复选框和文本字段组成的行。数据表的每个实例平均大约有 50 行,但可以扩展到 250 左右。

鉴于可以(由用户)调整(从数据库中)检索到的数据,我已经沿着包含排序、移动数据的能力等的 ArrayList 创建包装器集合的路径。然而,真正的屁股踢球者是我需要在提交时将行条目的内容和顺序“持久化”到数据库中。

我当前的集合正在物理上移动对象,因为我不想维护单独的索引列表,因为担心它们会变得不同步。这也是我选择将检索到的数据和捕获的数据合并到一个对象中的原因。

这是正确的方法吗?我确实调查了 JSF DataModel,但不确定它是否能让我以当前的排序顺序保存数据,就像物理移动元素一样容易。

4

1 回答 1

0

在这里物理移动对象是正确的方法,因为元素的数量很少会超过 50 行的平均值,因此性能不是问题。

由于对象是物理移动的,因此可以依赖列表的自然索引,而不必为需要不断同步的索引维护单独的数据结构。

于 2011-03-11T05:23:19.453 回答