簡體   English   中英

QueryDSL在生成的類中可以使用抽象類方法嗎?

[英]QueryDSL It's possible usage of abstract Class methods in generated classes?

可以使用queryDSL生成的類從類中引用抽象方法嗎?

這是一個例子:

@Entity
@Inheritance(strategy = InheritanceType.JOINED)
class A {
    @Id private Long id;

    public getId/setId;
    protected abstract Date finalDate();
}

@Entity
class B extends A {
    private Date finalDate;

    public getFinalDate/setFinalDate;
}

@Entity
class C extends A {
    private B b;

    public getFinalDate(){return b.getFinalDate());
}

我想使用這樣的查詢:

new JPAQuery<A>(em)
.select(a)
.where(a.finalDate.isNotNull())
.fetch();

但是在構建階段(構造元類)之后,生成的A類(QA.class)就沒有類似的東西。

答案是JB Nizets:

不需要將查詢轉換為SQL並由數據庫執行。 數據庫不知道也不關心您的類和方法。 它只知道其表和列。 – JB Nizet 10小時前

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM