按枚举休眠顺序字段



我在数据表上使用延迟加载分页,并希望根据以下枚举对结果进行排序:

public enum OrderStatus {
    AWAITING_PAYMENT,AWAITING_DISPATCH, DISPATCHED, REJECTED;
    public boolean isOpen(){
        return !(this==DISPATCHED||this==REJECTED);
    }
}
public Order{
@Enumerated(EnumType.STRING)
private OrderStatus status;
}

如果order.orderStatus.isOpen(),那么我希望它们显示在表的顶部。休眠条件(可能使用@Formula)支持这一点吗?

您可以使用Enumerated(EnumType.ORDINAL),并将order by status添加到查询中。

或者您可以使用Java对结果进行排序。

最新更新