gpt4 book ai didi

java - 如何在运行时获取 DiscriminatorValue

转载 作者:IT老高 更新时间:2023-10-28 20:30:26 24 4
gpt4 key购买 nike

我们有以下类(class)

@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE) // optional annotation as this is default
@DiscriminatorColumn(name = "apType", discriminatorType = DiscriminatorType.STRING, length = 255)
@DiscriminatorValue("AP")
public class ApplicationProcess {
}

还有这个

@Entity
@DiscriminatorValue("APS")
public class ApplicationProcessScheme extends ApplicationProcess {
}

现在我需要在运行时知道 ApplicationProcess 是否属于 DiscriminatorValue AP 或 APS。由于这是由 jpa 自动处理的,因此我无法获取此值。

我们正在调用一个以 ApplicationProcess 作为参数的方法,我想避免使用 instanceof 来检查它是什么类型。如果我能做类似的事情会更酷

applicationProcess.getApType().equals("AP");

最佳答案

您可以将您的鉴别器映射为只读属性:

public class ApplicationProcess { 

...

@Column(name = "apType", insertable = false, updatable = false)
private String apType;

}

关于java - 如何在运行时获取 DiscriminatorValue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3005383/

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