如何在嵌入属性中指定属性?

时间:2011-12-07 08:08:23

标签: java hibernate orm

我想查询嵌入类型中的属性:

@Embeddable
class MCValue {
    Currency currency;
    BigDecimal value;
}

@Entity
class Record {
    @Embedded
    @AttributeOverrides({
        @AttributeOverride(name = "currency", column = @Column(name = "price_cc")), 
        @AttributeOverride(name = "value", column = @Column(name = "price")) })
    MCValue price;
}

但是,在条件查询中,我不知道如何指定它们,还是应该支持它?

我已经尝试过,但这些都没有成功:

Projections.groupProperty("price_cc")
Projections.groupProperty("price.currency")
Projections.sum("price")
Projections.sum("price.value")

1 个答案:

答案 0 :(得分:1)

语法确实是price.currencyprice.value。 Hibernate查询总是以对象及其字段的形式编写,从不以数据库列的形式编写。

如果它不起作用,则表示您的代码中有其他错误。包括完整代码和异常堆栈跟踪。