java—编写非本机jpa查询,该查询使用扩展抽象类的子类中的重写方法

shyt4zoc  于 2021-07-08  发布在  Java
关注(0)|答案(0)|浏览(193)

假设我有这样一个抽象类:

public abstract class NaturalPersonCustomerType implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    [...]

    public abstract PersonType getType();

}

正在被某个特定类型(不止一个)扩展

public class OwnerType extends NaturalPersonCustomerType {

    private boolean someField1;
    private LocalDate someField2;
    private String someField3;

    @Override
    public PersonType getType() {
        return PersonType.SOME_TYPE;
    }
}

人员类型如下:

public enum PersonType {
    OWNER,
    PARTNER
}

我有以下存储库:

public interface NaturalPersonCustomerRepository<T extends NaturalPersonCustomerType> extends JpaRepository<T, Long> {

}

我想在这个存储库中实现一个方法,它将根据id和persontype选择一个实体。
问题是:我是否可以编写非本机jpa查询来执行基于id和persontype的select?
我知道如果这个persontype只是类中的一个字段,那么它是可以实现的,但是这里我们把它作为一个方法。
jpql支持它吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题