ListCodes
我正在尝试为作为实体的类设置 CriteriaQuery 谓词。ListCodes
还有一个称为Auditable
MappedSuperClass 的超类。
当我尝试这样做时
CriteriaQuery < ListCodes > criteriaQuery = builder.createQuery(ListCodes.class);
Root < ListCodes > listCodesRoot = criteriaQuery.from(ListCodes.class);
Predicate predicate = builder.equal(listCodesRoot.get("codeTypeCode"), "STATUSIND");
criteriaQuery.where(predicate);
我收到一个异常,codeTypeCode
无法在Auditable
. 但是,当我尝试使用treat
并为其创建根的替代解决方案时Auditable
,我遇到了一个异常,即 Auditable 只是一个 MappedSuperClass 所以我不能使它成为根。
这里的正确解决方案是什么?如何在 MappedSuperClass 的子类上使用 CriteriaQuery?
编辑:这是 Auditable 和 ListCodes 的相关标题
@MappedSuperclass
@EntityListeners({AuditListener.class})
@XmlRootElement(namespace=WebServiceConstants.MESSAGES_NAMESPACE)
@XmlType(namespace=WebServiceConstants.MESSAGES_NAMESPACE)
public class Auditable {
@Entity
@Table (name="TB_LIST_CODE")
public class ListCodes extends Auditable implements java.io.Serializable {
@Column(name="CODE_TYPE_CODE")
private String codeTypeCode;