可以说我有一个Report实体。在其中的@Embeddable ReportPeriod具有Integer monthInteger year字段。当我尝试按其Report reportReportPeriod reportPeriod进行排序时,它按reportmonthyear进行排序。如何更改排序顺序(year,然后是month)。可以通过任何注释解决吗?

最佳答案

我猜您想按休眠标准加载多个报告,并按其隐含的月份和年份对其进行排序?

Criteria crit = session.createCriteria(Report.class);
crit.addOrder(Order.asc("reportPeriod.year"));
crit.addOrder(Order.asc("reportPeriod.month"));
...=crit.list();


但是我不确定100%是否可以将Order应用于@Embeddable,但可以预期。

08-06 20:11