gpt4 book ai didi

java - 在 Spring Data JPA 中按类型查询

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:20:32 25 4
gpt4 key购买 nike

我有抽象类:

@Entity
@Inheritance(strategy = InheritanceType.JOINED)
public abstract class A {
...
}

和一些扩展类,例如:

@Entity
public class B extends A {
...
}

我还有第三个实体:

@Entity
public class C {

@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
private A objectA;
...
}

问题是,我如何在 C 实体存储库中构造 Spring Data JPA 查找器以仅查询扩展 A 所需类型的对象?

最佳答案

您可以使用您已定义“类型”的鉴别器值的名称

@Entity
@Inheritance(strategy = InheritanceType.JOINED)
@DiscriminatorColumn(name = "type", discriminatorType = DiscriminatorType.STRING)
@Table(name = "abc")
public abstract class Abc {
....

-------------------------------------------

@Query("select a from Abc a where type = ?1")
List<Abc> findByType(String typeValue);

关于java - 在 Spring Data JPA 中按类型查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21123780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com