【发布时间】:2011-02-03 08:56:57
【问题描述】:
我有一个班级 Person,他有一套书。在特定情况下,拥有有序或排序的集合是没有意义的。
现在假设我有一个搜索页面,其中包含一个显示 Person 和 Book 连接的表格。我希望能够按 Person 和 Book 中的字段对结果进行排序,然后从 Hibernate 中获取一个 List,并对其进行迭代。
因为集合是一个集合,所以书籍的顺序已经消失(Hibernate 的 PersistentSet 包装了一个书籍的 HashSet,它是无序的)。
因此,使用这种方法,我不能让结果也按 Book 字段排序。
如果我将集合从 Set 更改为 List,我的模型在语义上是不正确的。在模型中保持秩序是没有意义的。
有没有办法保持书籍的排序?也许 PersistentSet 有一种方法可以包装一个 LinkedHashSet(它是有序的),其中的顺序由我的搜索条件定义?
干杯!
【问题讨论】: