如何在Hibernate中正确映射它

时间:2017-12-14 13:44:38

标签: java hibernate enums entity sql-order-by

我有Enum类 - 具有三个值的状态: 绿色, 黄色, RED

我还有一个实体 SomeThing ,其字段为状态。它有 @Enumerated(EnumType.STRING)注释。

在我的带有Hibernate标准的DAO中,我想按状态排序的 SomeThing 项目进行排序,但按方法的默认顺序是按字母顺序排列的(因为 EnumType .STRING ),所以我首先得到 GREEN 项目,然后是 RED 项目,最后是 YELLOW 项目。

但我想通过方法创建自定义订单。我想首先获得 RED 项目,然后绿色,然后 YELLOW

第一个想法是创建一个包含状态字段的字典表和带有OneToMany关系的int orderIndex字段(一个状态类型,多个 SomeThing 记录) SomeThing 实体。然后我可以将int值分配给不同的Status类型,然后通过orderIndex字段对它进行排序。

达到我需要的最佳方式是什么? 提前感谢您的所有帮助和意见。

0 个答案:

没有答案